Boost C++ Libraries: Ticket #1063: multi_index usage refuses to compile with Sun Studio 11 (CC 5.8) on sparc https://svn.boost.org/trac10/ticket/1063 <p> /studio11/SUNWspro/bin/CC -c -DNDEBUG -D_STL=std -I./../rlp/utilities/include -I./../third-party-tools/boost -KPIC -mt -w -xO5 -g0 bt_boost_test.cpp -o obj/sparc-solaris9-cc58/bt_boost_test.o "./../third-party-tools/boost/boost/multi_index_container.hpp", line 309: Error: An integer constant expression is required here. "bt_boost_test.cpp", line 62: Where: While specializing "boost::multi_index::multi_index_container, boost::multi_index::member&gt;, 5&gt;, ustring_hasher, mpl_::na&gt;, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na&gt;, std::allocator&gt;::index". "bt_boost_test.cpp", line 62: Where: Specialized in non-template code. "./../third-party-tools/boost/boost/multi_index_container.hpp", line 310: Error: The type "boost::STATIC_ASSERTION_FAILURE, boost::multi_index::member&gt;, 5&gt;, ustring_hasher, mpl_::na&gt;, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na&gt;, std::allocator&gt;::index::index_found&gt;" is incomplete. "bt_boost_test.cpp", line 62: Where: While specializing "boost::multi_index::multi_index_container, boost::multi_index::member&gt;, 5&gt;, ustring_hasher, mpl_::na&gt;, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na&gt;, std::allocator&gt;::index". "bt_boost_test.cpp", line 62: Where: Specialized in non-template code. "bt_boost_test.cpp", line 77: Error: Could not find a match for boost::multi_index::detail::hashed_index&gt;, 5&gt;, ustring_hasher, std::equal_to&gt;&gt;, boost::multi_index::detail::nth_layer&lt;1, employee, boost::multi_index::indexed_by, boost::multi_index::member&gt;, 5&gt;, ustring_hasher, mpl_::na&gt;, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na&gt;, std::allocator&gt;, boost::mpl::aux::fold_impl&lt;1, int, int, boost::mpl::vector0, boost::mpl::bind2, mpl_::arg&lt;1&gt;, boost::mpl::bind1, mpl_::void_&gt;, mpl_::arg&lt;1&gt;&gt;, 0&gt;, mpl_::arg&lt;2&gt;&gt;&gt;&gt;::state, boost::multi_index::detail::hashed_unique_tag&gt;::insert(employee) needed in UT_Boost::testBasic(). "bt_boost_test.cpp", line 81: Error: Could not find a match for boost::multi_index::detail::hashed_index&gt;, 5&gt;, ustring_hasher, std::equal_to&gt;&gt;, boost::multi_index::detail::nth_layer&lt;1, employee, boost::multi_index::indexed_by, boost::multi_index::member&gt;, 5&gt;, ustring_hasher, mpl_::na&gt;, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na&gt;, std::allocator&gt;, boost::mpl::aux::fold_impl&lt;1, int, int, boost::mpl::vector0, boost::mpl::bind2, mpl_::arg&lt;1&gt;, boost::mpl::bind1, mpl_::void_&gt;, mpl_::arg&lt;1&gt;&gt;, 0&gt;, mpl_::arg&lt;2&gt;&gt;&gt;&gt;::state, boost::multi_index::detail::hashed_unique_tag&gt;::insert(employee) needed in UT_Boost::testBasic(). "bt_boost_test.cpp", line 83: Error: Could not find a match for boost::multi_index::multi_index_container, boost::multi_index::member&gt;, 5&gt;, ustring_hasher, mpl_::na&gt;, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na&gt;, std::allocator&gt;::get, boost::multi_index::member&gt;, 5&gt;, ustring_hasher, mpl_::na&gt;, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na&gt;, std::allocator&gt;::N&gt;() needed in UT_Boost::testBasic(). "bt_boost_test.cpp", line 87: Error: boost::mpl::deref&gt;, 5&gt;, ustring_hasher, std::equal_to&gt;&gt;, boost::multi_index::detail::nth_layer&lt;1, employee, boost::multi_index::indexed_by, boost::multi_index::member&gt;, 5&gt;, ustring_hasher, mpl_::na&gt;, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na&gt;, std::allocator&gt;, boost::mpl::aux::fold_impl&lt;1, int, int, boost::mpl::vector0, boost::mpl::bind2, mpl_::arg&lt;1&gt;, boost::mpl::bind1, mpl_::void_&gt;, mpl_::arg&lt;1&gt;&gt;, 0&gt;, mpl_::arg&lt;2&gt;&gt;&gt;&gt;::state, boost::multi_index::detail::hashed_unique_tag&gt;::index_type_list, boost::multi_index::detail::has_tag&gt;::type&gt;::type is not a structure type. "bt_boost_test.cpp", line 88: Error: The operation "iterator != boost::multi_index::detail::hashed_index_iterator&gt;, boost::multi_index::detail::bucket_array, mpl_::na&gt;" is illegal. "bt_boost_test.cpp", line 89: Error: Pointer type needed instead of iterator. "bt_boost_test.cpp", line 92: Error: boost::mpl::deref&gt;, 5&gt;, ustring_hasher, std::equal_to&gt;&gt;, boost::multi_index::detail::nth_layer&lt;1, employee, boost::multi_index::indexed_by, boost::multi_index::member&gt;, 5&gt;, ustring_hasher, mpl_::na&gt;, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na&gt;, std::allocator&gt;, boost::mpl::aux::fold_impl&lt;1, int, int, boost::mpl::vector0, boost::mpl::bind2, mpl_::arg&lt;1&gt;, boost::mpl::bind1, mpl_::void_&gt;, mpl_::arg&lt;1&gt;&gt;, 0&gt;, mpl_::arg&lt;2&gt;&gt;&gt;&gt;::state, boost::multi_index::detail::hashed_unique_tag&gt;::index_type_list, boost::multi_index::detail::has_tag&gt;::type&gt;::type is not a structure type. "bt_boost_test.cpp", line 93: Error: The operation "iterator == boost::multi_index::detail::hashed_index_iterator&gt;, boost::multi_index::detail::bucket_array, mpl_::na&gt;" is illegal. 10 Error(s) detected. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/1063 Trac 1.4.3 anonymous Wed, 20 Jun 2007 18:59:22 GMT attachment set https://svn.boost.org/trac10/ticket/1063 https://svn.boost.org/trac10/ticket/1063 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">bloop.cpp</span> </li> </ul> Ticket Joaquín M López Muñoz Thu, 21 Jun 2007 08:41:51 GMT owner set https://svn.boost.org/trac10/ticket/1063#comment:1 https://svn.boost.org/trac10/ticket/1063#comment:1 <ul> <li><strong>owner</strong> set to <span class="trac-author">Joaquín M López Muñoz</span> </li> </ul> Ticket Joaquín M López Muñoz Thu, 21 Jun 2007 08:43:51 GMT status changed; resolution set https://svn.boost.org/trac10/ticket/1063#comment:2 https://svn.boost.org/trac10/ticket/1063#comment:2 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">invalid</span> </li> </ul> <p> The problem only showed with an old patch level. When upgrading to Sun C++ 5.8 Patch 121017-11 2007/05/02 everything works fine. </p> Ticket