Opened 13 years ago

Closed 12 years ago

#3864 closed Bugs (fixed)

boost.multi_index doesn't work with gcc-4.5 in c++0x mode

Reported by: Linghua Tseng <uranus@…> Owned by: Aleksey Gurtovoy
Milestone: Boost 1.42.0 Component: mpl
Version: Boost 1.41.0 Severity: Problem
Keywords: Cc:

Description

Compiler (gcc 4.5 snapshot 20100121):

Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/home/lhtseng/gcc45/libexec/gcc/x86_64-pc-linux-gnu/4.5.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Thread model: posix
gcc version 4.5.0 20100121 (experimental) (GCC)


test.cxx:

#include <boost/multi_index_container.hpp>

int main()
{
}


command:

g++ -std=gnu++0x test.cxx -o test


a part of error messages (full text was in the attachment):

...
/usr/include/boost/mpl/aux_/preprocessed/gcc/full_lambda.hpp:555:1: error: specialization of 'boost::mpl::aux::template_arity<boost::mpl::lambda<mpl_::na, mpl_::na> >' after instantiation
/usr/include/boost/mpl/aux_/preprocessed/gcc/full_lambda.hpp:555:1: error: redefinition of 'struct boost::mpl::aux::template_arity<boost::mpl::lambda<mpl_::na, mpl_::na> >'
/usr/include/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> >'
...
/usr/include/boost/mpl/aux_/preprocessed/gcc/or.hpp:67:1: error: specialization of 'boost::mpl::aux::template_arity<boost::mpl::or_<> >' after instantiation
/usr/include/boost/mpl/aux_/preprocessed/gcc/or.hpp:67:1: error: redefinition of 'struct boost::mpl::aux::template_arity<boost::mpl::or_<> >'
/usr/include/boost/mpl/aux_/preprocessed/gcc/template_arity.hpp:92:1: error: previous definition of 'struct boost::mpl::aux::template_arity<boost::mpl::or_<> >'
...
/usr/include/boost/mpl/aux_/preprocessed/gcc/and.hpp:67:1: error: specialization of 'boost::mpl::aux::template_arity<boost::mpl::and_<> >' after instantiation
/usr/include/boost/mpl/aux_/preprocessed/gcc/and.hpp:67:1: error: redefinition of 'struct boost::mpl::aux::template_arity<boost::mpl::and_<> >'
/usr/include/boost/mpl/aux_/preprocessed/gcc/template_arity.hpp:92:1: error: previous definition of 'struct boost::mpl::aux::template_arity<boost::mpl::and_<> >'
...

Perhaps it's a problem of boost.mpl?

Attachments (1)

erorr.txt (34.8 KB ) - added by Linghua Tseng <uranus@…> 13 years ago.
full text of error messages

Download all attachments as: .zip

Change History (5)

by Linghua Tseng <uranus@…>, 13 years ago

Attachment: erorr.txt added

full text of error messages

comment:1 by rwebb <richard.webb@…>, 13 years ago

My Mingw 4.5 tests have the same error. e.g.

http://tinyurl.com/y8uhc2r

however, the same error occurs in loads of Boost libs and only started happening last week so i'm not sure if it's a Boost bug of a GCC regression.

In either case, i think it's more of an MPL problem than a multi_index problem.

comment:2 by Joaquín M López Muñoz, 13 years ago

Component: multi_indexmpl
Owner: changed from Joaquín M López Muñoz to Aleksey Gurtovoy

The problem is affecting MPL, see for instance http://tinyurl.com/ybpm9m7 , so I'm transferring the ticket to that lib.

comment:3 by rwebb <richard.webb@…>, 12 years ago

This seems to be fixed on Trunk now (all the multi_index tests are passing at any rate).

comment:4 by Linghua Tseng <uranus@…>, 12 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.