|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r67743 - trunk/status
From: marshall_at_[hidden]
Date: 2011-01-06 19:45:23
Author: marshall
Date: 2011-01-06 19:45:21 EST (Thu, 06 Jan 2011)
New Revision: 67743
URL: http://svn.boost.org/trac/boost/changeset/67743
Log:
Applied patch; refs #2294
Text files modified:
trunk/status/explicit-failures-markup.xml | 36 ++++++++++++++++++++++++++++++++----
1 files changed, 32 insertions(+), 4 deletions(-)
Modified: trunk/status/explicit-failures-markup.xml
==============================================================================
--- trunk/status/explicit-failures-markup.xml (original)
+++ trunk/status/explicit-failures-markup.xml 2011-01-06 19:45:21 EST (Thu, 06 Jan 2011)
@@ -2546,24 +2546,52 @@
<toolset name="gcc-3.4.6_linux_ia64"/>
<toolset name="gcc-4.2.*"/>
<toolset name="gcc-4.1.2_sunos_i86pc"/>
- <note author="Fernando Cacciola" refid="2"/>
+ <note author="Fernando Cacciola" id="optional-compiler-bug">
+ <p>This failure is caused by a compiler bug, and as far as we can
+ tell, can't be worked around in the library, although we think
+ the library might be made safer with respect to this bug.</p>
+
+ <p>Specifics: the following simple test fails when it should succeed.</p>
+ <pre>
+ #include <cassert>
+
+ int const x = 0;
+ struct A
+ {
+ A(int const& y)
+ {
+ assert(&x == &y);
+ }
+ };
+
+ int main()
+ {
+ A a(x); // direct initialization works fine
+ A b = x; // copy initialization causes x to be copied before it is bound
+ }
+ </pre>
+
+ The possible safety enhancement would be to cause the constructor
+ in question to be explicit for optional<T const&>; that
+ would prevent copy initialization.
+ </note>
</mark-expected-failures>
<mark-expected-failures>
<test name="optional_test_ref_fail1"/>
<toolset name="borland-5.6*"/>
<toolset name="borland-5.8*"/>
<toolset name="borland-5.9*"/>
- <note author="Fernando Cacciola" refid="2"/>
+ <note author="Fernando Cacciola" refid="optional-compiler-bug"/>
</mark-expected-failures>
<mark-expected-failures>
<test name="optional_test_fail3a"/>
<toolset name="gcc-3_3-darwin"/>
- <note author="Fernando Cacciola" refid="2"/>
+ <note author="Fernando Cacciola" refid="optional-compiler-bug"/>
</mark-expected-failures>
<mark-expected-failures>
<test name="optional_test_inplace_fail2"/>
<toolset name="gcc-3_3-darwin"/>
- <note author="Fernando Cacciola" refid="2"/>
+ <note author="Fernando Cacciola" refid="optional-compiler-bug"/>
</mark-expected-failures>
</library>
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk