Boost logo

Boost :

Subject: Re: [boost] VC10 config - some regressions in several libraries
From: Stephan T. Lavavej (stl_at_[hidden])
Date: 2010-04-26 15:08:28


Correct. This wasn't intentional, but /Za ("disable language extensions") has an extremely nasty bug in VC10. It performs elided-copy-constructor-accessibility checks when it shouldn't (specifically, when rvalue references are being bound, in which case no copy constructors are being called, even theoretically).

Because of this bug, /Za should not be used. (Additionally, we no longer test our Standard Library implementation under /Za.) It's unfortunate, since /Za disables a bunch of evil extensions, but breaking conformant code is much worse than permitting nonconformant code.

Stephan T. Lavavej
Visual C++ Libraries Developer

-----Original Message-----
From: boost-bounces_at_[hidden] [mailto:boost-bounces_at_[hidden]] On Behalf Of Ion Gaztañaga
Sent: Monday, April 26, 2010 4:36 AM
To: boost_at_[hidden]
Subject: Re: [boost] VC10 config - some regressions in several libraries

On 26/04/2010 12:20, John Maddock wrote:
>> Looking at the test results, a bunch of the tests that are failing on
>> VC10 are
>> also failing on GCC 4.5 in C++0x mode.
>>
>> Seems to be related to this:
>> http://article.gmane.org/gmane.comp.lib.boost.devel/203080
>>
>
> OK seems to be a problem with our code then :-(
>
> Hopefully this will be an incentive for folks to fix things up.

It seems that my problem with move emulation in projects imported from
older MSVC to MSVC10 is that some rvalue references rules need language
extensions option activated. Otherwise we can't have movable-only types.

Best,

Ion
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk