id summary reporter owner description type status milestone component version severity resolution keywords cc 10732 clang-3.5 splay_set compiling error khizmax@… Ion Gaztañaga "When compiling libcds project, the following error is encountered for clang-3.4, clang-3.5 64bit: {{{ In file included from /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/splay_set.hpp:21: In file included from /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/splaytree.hpp:26: In file included from /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/bstree.hpp:25: In file included from /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/bs_set_hook.hpp:25: /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/options.hpp:54:48: error: no type named 'default_bstree_hook' in 'set::IntrusiveStripedSetHdrTest::base_item >' BOOST_INTRUSIVE_DEFAULT_HOOK_MARKER_DEFINITION(default_bstree_hook); }}} The same error is observed or boost 1.55, 1.56, 1.57 beta1. Clang-3.3 and gcc-4.8, gcc-4.9 64bit is ok. Environment: ubuntu-14.04 amd64 Compiler output: {{{ clang-3.5 -std=c++11 -c -pedantic -Wall -mcx16 -march=native -DNDEBUG -O3 -fno-strict-aliasing -m64 -fPIC -march=native -I/home/khizmax/works/lib/boost_1_57_0_b1 -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -D_FILE_OFFSET_BITS=64 -I.. -I../tests/test-hdr -I../tests ../tests/test-hdr/set/hdr_intrusive_refinable_hashset_splayset.cpp -o ../tests/test-hdr/set/hdr_intrusive_refinable_hashset_splayset.o In file included from ../tests/test-hdr/set/hdr_intrusive_refinable_hashset_splayset.cpp:4: In file included from ../cds/intrusive/striped_set/boost_splay_set.h:6: In file included from /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/splay_set.hpp:21: In file included from /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/splaytree.hpp:26: In file included from /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/bstree.hpp:25: In file included from /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/bs_set_hook.hpp:25: /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/options.hpp:54:48: error: no type named 'default_bstree_hook' in 'set::IntrusiveStripedSetHdrTest::base_item >' BOOST_INTRUSIVE_DEFAULT_HOOK_MARKER_DEFINITION(default_bstree_hook); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/options.hpp:46:27: note: expanded from macro 'BOOST_INTRUSIVE_DEFAULT_HOOK_MARKER_DEFINITION' { typedef typename T::BOOST_INTRUSIVE_DEFAULT_HOOK_MARKER type; };\ ^ /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/detail/mpl.hpp:139:24: note: in instantiation of template class 'boost::intrusive::detail::default_bstree_hook::apply > >' requested here typedef typename F::template apply::type type; ^ /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/detail/mpl.hpp:203:7: note: in instantiation of template class 'boost::intrusive::detail::apply > >' requested here : if_c::type ^ /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/options.hpp:145:21: note: in instantiation of template class 'boost::intrusive::detail::eval_if_c > >, boost::intrusive::detail::identity >' requested here typedef typename eval_if_c ^ /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/splay_set.hpp:440:29: note: in instantiation of template class 'boost::intrusive::detail::get_value_traits >, boost::intrusive::detail::default_bstree_hook>' requested here typedef typename detail::get_value_traits ^ /home/khizmax/works/lib/boost_1_57_0_b1/boost/intrusive/splay_set.hpp:463:14: note: in instantiation of template class 'boost::intrusive::make_splay_set >, boost::intrusive::compare > > >, void, void, void, void>' requested here : public make_splay_set >, boost::intrusive::compare > > >, void, void, void, void>' requested here typedef typename container_type::value_type value_type ; ///< value type stored in the container ^ ../cds/intrusive/striped_set.h:279:26: note: in instantiation of template class 'cds::intrusive::striped_set::details::boost_intrusive_set_adapter >, boost::intrusive::compare > > >, void, void, void, void> >' requested here typedef typename bucket_type::value_type value_type ; ///< value type stored in the set ^ ../tests/test-hdr/set/hdr_intrusive_refinable_hashset_splayset.cpp:56:18: note: in instantiation of template class 'cds::intrusive::StripedSet >, boost::intrusive::compare > > >, void, void, void, void>, cds::opt::mutex_policy > >, cds::opt::hash, cds::opt::resizing_policy > >' requested here set_type s( 64, ci::striped_set::single_bucket_size_threshold<0>(256) ); ^ }}} " Bugs closed To Be Determined intrusive Boost 1.57.0 Problem invalid splay_set default_bstree_hook