[Bug c++/42880] trunk does not compile boost MPL

davek at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Wed Jan 27 12:45:00 GMT 2010



------- Comment #18 from davek at gcc dot gnu dot org  2010-01-27 12:45 -------
(In reply to comment #17)
> So, as a matter of fact, char16_t and char32_t normally work on cygwin too.

Ah, hang on.  I may have got some of my revision numbers mixed up there.  (I
have a number of objdirs lying around built at various times from the same
sandbox.)

Here are two fairly recent ones:


$ /gnu/gcc/install-lto/opt/gcc-tools/bin/g++-4  -std=c++0x -c mpl_size_hpp.ii
; echo $?
0

$ /gnu/gcc/install-obj2/opt/gcc-tools/bin/g++-4  -std=c++0x -c mpl_size_hpp.ii
 ; echo $?
In file included from
/usr/include/boost_1_39_0/boost/mpl/aux_/include_preproces
sed.hpp:37:0,
                 from
/usr/include/boost_1_39_0/boost/mpl/aux_/full_lambda.hpp:4
4,
                 from /usr/include/boost_1_39_0/boost/mpl/lambda.hpp:22,
                 from /usr/include/boost_1_39_0/boost/mpl/iter_fold.hpp:20,
                 from /usr/include/boost_1_39_0/boost/mpl/distance.hpp:18,
                 from
/usr/include/boost_1_39_0/boost/mpl/aux_/size_impl.hpp:19,

                 from /usr/include/boost_1_39_0/boost/mpl/size.hpp:19,
                 from br.cpp:2:
/usr/include/boost_1_39_0/boost/mpl/aux_/preprocessed/gcc/full_lambda.hpp:555:49
2: error: specialization of
'boost::mpl::aux::template_arity<boost::mpl::lambda<
mpl_::na, mpl_::na> >' after instantiation
/usr/include/boost_1_39_0/boost/mpl/aux_/preprocessed/gcc/full_lambda.hpp:555:49
2: error: redefinition of 'struct
boost::mpl::aux::template_arity<boost::mpl::la
mbda<mpl_::na, mpl_::na> >'
/usr/include/boost_1_39_0/boost/mpl/aux_/preprocessed/gcc/template_arity.hpp:92:
1: error: previous definition of 'struct
boost::mpl::aux::template_arity<boost::
mpl::lambda<mpl_::na, mpl_::na> >'
In file included from /usr/include/boost_1_39_0/boost/mpl/distance.hpp:18:0,
                 from
/usr/include/boost_1_39_0/boost/mpl/aux_/size_impl.hpp:19,

                 from /usr/include/boost_1_39_0/boost/mpl/size.hpp:19,
                 from br.cpp:2:
/usr/include/boost_1_39_0/boost/mpl/iter_fold.hpp:45:531: error: specialization
of 'boost::mpl::aux::template_arity<boost::mpl::iter_fold<> >' after
instantiati
on
/usr/include/boost_1_39_0/boost/mpl/iter_fold.hpp:45:531: error: redefinition
of
 'struct boost::mpl::aux::template_arity<boost::mpl::iter_fold<> >'
/usr/include/boost_1_39_0/boost/mpl/aux_/preprocessed/gcc/template_arity.hpp:92:
1: error: previous definition of 'struct
boost::mpl::aux::template_arity<boost::
mpl::iter_fold<> >'
In file included from /usr/include/boost_1_39_0/boost/mpl/distance.hpp:19:0,
                 from
/usr/include/boost_1_39_0/boost/mpl/aux_/size_impl.hpp:19,

                 from /usr/include/boost_1_39_0/boost/mpl/size.hpp:19,
                 from br.cpp:2:
/usr/include/boost_1_39_0/boost/mpl/iterator_range.hpp:38:521: error:
specializa
tion of 'boost::mpl::aux::template_arity<boost::mpl::iterator_range<> >' after
i
nstantiation
/usr/include/boost_1_39_0/boost/mpl/iterator_range.hpp:38:521: error:
redefiniti
on of 'struct boost::mpl::aux::template_arity<boost::mpl::iterator_range<> >'
/usr/include/boost_1_39_0/boost/mpl/aux_/preprocessed/gcc/template_arity.hpp:92:
1: error: previous definition of 'struct
boost::mpl::aux::template_arity<boost::
mpl::iterator_range<> >'
In file included from
/usr/include/boost_1_39_0/boost/mpl/aux_/size_impl.hpp:19:
0,
                 from /usr/include/boost_1_39_0/boost/mpl/size.hpp:19,
                 from br.cpp:2:
/usr/include/boost_1_39_0/boost/mpl/distance.hpp:74:485: error: specialization
o
f 'boost::mpl::aux::template_arity<boost::mpl::distance<> >' after
instantiation

/usr/include/boost_1_39_0/boost/mpl/distance.hpp:74:485: error: redefinition of
'struct boost::mpl::aux::template_arity<boost::mpl::distance<> >'
/usr/include/boost_1_39_0/boost/mpl/aux_/preprocessed/gcc/template_arity.hpp:92:
1: error: previous definition of 'struct
boost::mpl::aux::template_arity<boost::
mpl::distance<> >'
In file included from br.cpp:2:0:
/usr/include/boost_1_39_0/boost/mpl/size.hpp:38:421: error: specialization of
'b
oost::mpl::aux::template_arity<boost::mpl::size<> >' after instantiation
/usr/include/boost_1_39_0/boost/mpl/size.hpp:38:421: error: redefinition of
'str
uct boost::mpl::aux::template_arity<boost::mpl::size<> >'
/usr/include/boost_1_39_0/boost/mpl/aux_/preprocessed/gcc/template_arity.hpp:92:
1: error: previous definition of 'struct
boost::mpl::aux::template_arity<boost::
mpl::size<> >'
1

DKAdmin@ubik /tmp/boost
$ /gnu/gcc/install-lto/opt/gcc-tools/bin/g++-4  -std=c++0x -c mpl_size_hpp.ii
; echo $?
0

DKAdmin@ubik /tmp/boost
$



However, note there's still no problem with the wide char types.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42880



More information about the Gcc-bugs mailing list