
At Monday 2004-02-16 07:31, you wrote:
"Victor A. Wagner, Jr." <vawjr@rudbek.com> writes:
Actually, I'm little surprised that this thread has not come (yet) to the issue of supporting old compilers. IMVHO, when it comes to testing, these compilers are real problem.
when it comes to writing/updating the libraries, support of these fossils is staggeringly expensive.
I just want to point out that the "fossils" with major conformance problems are still in extremely wide use in industry, and some are even the latest official releases (see Borland). One of my most progressive and forward-thinking clients is still using vc6 for production work. They're anxious to upgrade to vc7.1, but haven't yet had the opportunity. I'd love to stop hacking around vc6 and borland limitations, but we should be sure we understand what we're doing when that day comes.
I understand the pain of updating, and I understand even more the pain of working with stuff that is flat out broken. This will no doubt sound very arrogant to many, but IMO, we've coddled Microsoft for WAY to long. They almost killed C++ by their steadfast refusal for many years to NOT adhere to the standard, and the only way we could have pressured them would have been to drop support for their broken compiler (VC6.0 IS broken, make NO mistake about it). How many (wo)man years have been wasted by the human race making workarounds for a compiler that was broken shortly after it was released? Everyone seems to forget that Microsoft publicly announced that the wouldn't make their C++ ISO conformant because "Our customers are more interested in backwards compatibility than in standards conformance." How many more (wo)man years will we waste by telling people "it's ok, you don't have to upgrade, we'll do all the hard work for your broken compiler" ? Is this how we make progress? I mean, it's _only_ been 5 years since the standard was approved. If you'd love to stop, then stop. "they haven't had the opportunity".... and as long as you keep doing the workarounds for them they don't have a compelling reason to upgrade. I certainly hope you get paid well for the pain. Support doesn't just impact the users of these fossils, it affects all of us. We have to wait longer for things to be released. We have to slow down our compiles doing all the #ifdef BROKEN_COMPILER_3 #endif stuff in the headers We have difficulty reading the source because of all the workarounds tucked in. Workarounds don't necessarily get removed when the compiler is "fixed". I see messages from VC6 users that are having problems w/ parts of boost... it takes my time to skip over them in the EMail, it takes bandwidth and disk space. It's been, what?, 2 years now since Microsoft replaced VC6.0? How long are we going to be held back by a company that _clearly_ wanted to bury C++ 7 years ago? In some sense we seem to be suffering from the same thing that battered spouses suffer. We're afraid to leave, even when there is clearly a better alternative. I note with approval that Spirit 1.8 has dropped support for "substantially non-conforming" compilers. I believe we know the consequences "when the day comes". I think the day went some time ago.
-- Dave Abrahams Boost Consulting www.boost-consulting.com
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Victor A. Wagner Jr. http://rudbek.com The five most dangerous words in the English language: "There oughta be a law"