Opened 9 years ago
Closed 9 years ago
#9249 closed Bugs (fixed)
BOOST_MPL_ASSERT is broken in VC12 (VC++2013RC)
Reported by: | Owned by: | Aleksey Gurtovoy | |
---|---|---|---|
Milestone: | To Be Determined | Component: | mpl |
Version: | Boost 1.55.0 | Severity: | Problem |
Keywords: | Cc: |
Description
Code:
#include <boost/mpl/assert.hpp> struct true_type { static const bool value = true; }; struct pred { typedef true_type type; }; static_assert(pred::type::value == true, ""); // ok BOOST_MPL_ASSERT((pred)); // error (line #12)
Compiler output:
> cl /It:\_lib\boost\1_55_0b1 Source.cpp Microsoft (R) C/C++ Optimizing Compiler Version 18.00.20827.3 for x86 Copyright (C) Microsoft Corporation. All rights reserved. Source.cpp t:\_lib\boost\1_55_0b1\boost/mpl/assert.hpp(149) : error C2143: syntax error : missing ';' before '<' t:\_lib\boost\1_55_0b1\boost/mpl/assert.hpp(153) : see reference to class template instantiation 'boost::mpl::eval_assert<Pred>' being compiled t:\_lib\boost\1_55_0b1\boost/mpl/assert.hpp(149) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int t:\_lib\boost\1_55_0b1\boost/mpl/assert.hpp(152) : error C2238: unexpected token(s) preceding ';' t:\_lib\boost\1_55_0b1\boost/mpl/assert.hpp(159) : error C2143: syntax error : missing ';' before '<' t:\_lib\boost\1_55_0b1\boost/mpl/assert.hpp(163) : see reference to class template instantiation 'boost::mpl::eval_assert_not<Pred>' being compiled t:\_lib\boost\1_55_0b1\boost/mpl/assert.hpp(159) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int t:\_lib\boost\1_55_0b1\boost/mpl/assert.hpp(162) : error C2238: unexpected token(s) preceding ';' Source.cpp(12) : error C2039: 'assert_arg' : is not a member of 'boost::mpl' Source.cpp(12) : error C3861: 'assert_arg': identifier not found
Change History (3)
comment:1 by , 9 years ago
comment:2 by , 9 years ago
It was fixed in r84443 in May, but that won't make any release compatible with VS2013. Can someone please merge that revision to the release branch?
comment:3 by , 9 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
This was eventually merged in r86514.
Note:
See TracTickets
for help on using tickets.
Well, it seems it was already fixed in trunk.
Sorry for false alert.