Boost logo

Boost Users :

Subject: [Boost-users] GCC 4.6.0 rejects Boost Intrusive header
From: Brian Wood (woodbrian77_at_[hidden])
Date: 2011-06-26 11:40:56

GCC 4.6.0 rejects the *Boost* intrusive header list.hpp.
Here's the command line:
g++ -std=c++0x -O2 -s -W -Wall -I /home/brian/boost_1_46_1 -c -o

and the output:
In file included from
/home/brian/boost_1_46_1/*boost*/intrusive/list.hpp: In static member
function =91static *boost*::intrusive::list_impl<Config>&

/home/brian/boost_1_46_1/*boost*/intrusive/list.hpp:1291:89: sorry,
unimplemented: unexpected ast of kind field_decl
/home/brian/boost_1_46_1/*boost*/intrusive/list.hpp:1291: confused by
earlier errors, bailing out
Preprocessed source stored into /tmp/ccRWz6ZT.out file, please attach
this to your bugreport.

The .cc file is one line -- an include of list.hpp.

Here's the function that it is complaining about:

  static list_impl &priv_container_from_end_iterator(const
const_iterator &end_iterator)
     root_plus_size *r = detail::parent_from_member<root_plus_size,

( detail::boost_intrusive_get_pointer(end_iterator.pointed_node()),
     data_t *d = detail::parent_from_member<data_t, root_plus_size>
        ( r, &data_t::root_plus_size_);
     list_impl *s = detail::parent_from_member<list_impl, data_t>(d,
     return *s;

1291 is the line that starts with "list_impl *s = "
I'd like to be able to begin using GCC 4.6, but this is preventing
me from doing so. Would someone with GCC 4.7 or 4.6.1 test
this and report the results? TIA.

Brian Wood
Ebenezer Enterprises <>
Trust in the L-RD and lean not on your own understanding.
In all your ways acknowledge Him and He will direct your paths.
Proverbs 3:5,6

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at