On 31/03/2016 12:56, Edward Diener wrote:
Asking programmers to support another broken C++ preprocessor at this
stage of C++'s development history is a travesty. And all simply because Microsoft has refused for a quarter of a century to fix their C++ preprocessor implementation, which they well know has always been non-standard.
Yes.
It is not accurate to blaim M$ for this. Supported (by M$) operating systems are W7SP1, W8.1 and W10 (and their server counterparts) and no others. They all come with their own compiler, and are therefore the the compilers [VS2010-VS2015] that need support (in PP or otherwise) and no more. These compilers all have C++11 support, to some extent, but progressively more of it. ...the aforementioned code must break at some point. With the sets growing,
the sooner it breaks the better because it just gets worse as time goes on.
You are perfectly correct on this one. This should apply to boost as well, and would probably make Edward's life a lot easier. Plenty of stuff concerning VC7 (*Visual C++ .NET 2002, 32-bit only*) and VC8 (*Visual C++ 2005*) in the code-base of boost (typeof/type_traits)... Valuing popularity more highly that doing what is right results in trading
future productivity for short-term expediency.
I always say, follow the money, M$ might have a hand in this. degski