intrusive::slist work with Sun CC? I notice that it uses some MPL. Does MPL generally not work with Sun CC? CC: Sun C++ 5.9 SunOS_sparc Patch 124863-12 2009/04/21 CC -I/development/tango/current/misc/boost/boost_1_39_0/SunOS/include/boost-1_39 -c test.cxx -o test.o test.cxx: Christopher Hite RTS Realtime Systems Software GmbH, Rembrandtstrasse 13, D-60596 Frankfurt am Main T: +49.69.61009.0 / F: +49.69.61009.181 Sitz: Frankfurt am Main - HRB 84467 Amtsgericht Frankfurt am Main Geschäftsführer: Steffen Gemuenden, Igor Sluga www.rtsgroup.net This email and any attachments are for the exclusive and confidential use of the intended recipient. If you are not the intended recipient, or an employee or agent responsible for delivering this message to the intended recipient, please do not read, distribute or take action in reliance upon this message. If you have received this in error, please notify me immediately by return email and promptly delete this message and its attachments from your computer system. ------------------------------------------------------- #include <boost/intrusive/slist.hpp> using namespace boost::intrusive; struct CalcEntry: public slist_base_hook<none,none,none> {}; void foo(){ typedef slist<CalcEntry,cache_last<true> > CalcList; CalcList _calcList; } ------------------------------------------------------- "/development/tango/current/misc/boost/boost_1_39_0/SunOS/include/boost-1_39/boost/intrusive/slist.hpp", line 121: Error: pointer is not a member of boost::intrusive::detail::generic_hook<boost::intrusive::get_slist_node_algo<void*>, boost::intrusive::default_tag, 1, 2>. "/development/tango/current/misc/boost/boost_1_39_0/SunOS/include/boost-1_39/boost/intrusive/slist.hpp", line 1943: Where: While specializing "boost::intrusive::slist_impl<boost::intrusive::slistopt<boost::intrusive::detail::generic_hook<boost::intrusive::get_slist_node_algo<void*>, boost::intrusive::default_tag, 1, 2>, unsigned, 1, 0, 1>>". "/development/tango/current/misc/boost/boost_1_39_0/SunOS/include/boost-1_39/boost/intrusive/slist.hpp", line 1943: Where: Specialized in boost::intrusive::slist<CalcEntry, boost::intrusive::cache_last<1>, boost::intrusive::none, boost::intrusive::none, boost::intrusive::none, boost::intrusive::none>. "test.cxx", line 9: Where: Specialized in non-template code. "/development/tango/current/misc/boost/boost_1_39_0/SunOS/include/boost-1_39/boost/intrusive/slist.hpp", line 122: Error: const_pointer is not a member of boost::intrusive::detail::generic_hook<boost::intrusive::get_slist_node_algo<void*>, boost::intrusive::default_tag, 1, 2>. "/development/tango/current/misc/boost/boost_1_39_0/SunOS/include/boost-1_39/boost/intrusive/slist.hpp", line 1943: Where: While specializing "boost::intrusive::slist_impl<boost::intrusive::slistopt<boost::intrusive::detail::generic_hook<boost::intrusive::get_slist_node_algo<void*>, boost::intrusive::default_tag, 1, 2>, unsigned, 1, 0, 1>>". "/development/tango/current/misc/boost/boost_1_39_0/SunOS/include/boost-1_39/boost/intrusive/slist.hpp", line 1943: Where: Specialized in boost::intrusive::slist<CalcEntry, boost::intrusive::cache_last<1>, boost::intrusive::none, boost::intrusive::none, boost::intrusive::none, boost::intrusive::none>. "test.cxx", line 9: Where: Specialized in non-template code. "/development/tango/current/misc/boost/boost_1_39_0/SunOS/include/boost-1_39/boost/intrusive/slist.hpp", line 123: Error: iterator_traits is not a member of std. "/development/tango/current/misc/boost/boost_1_39_0/SunOS/include/boost-1_39/boost/intrusive/slist.hpp", line 1943: Where: While specializing "boost::intrusive::slist_impl<boost::intrusive::slistopt<boost::intrusive::detail::generic_hook<boost::intrusive::get_slist_node_algo<void*>, boost::intrusive::default_tag, 1, 2>, unsigned, 1, 0, 1>>". "/development/tango/current/misc/boost/boost_1_39_0/SunOS/include/boost-1_39/boost/intrusive/slist.hpp", line 1943: Where: Specialized in boost::intrusive::slist<CalcEntry, boost::intrusive::cache_last<1>, boost::intrusive::none, boost::intrusive::none, boost::intrusive::none, boost::intrusive::none>. "test.cxx", line 9: Where: Specialized in non-template code. "/development/tango/current/misc/boost/boost_1_39_0/SunOS/include/boost-1_39/boost/intrusive/slist.hpp", line 123: Error: A declaration does not specify a tag or an identifier. ......
AMDG Chris Hite wrote:
intrusive::slist work with Sun CC? I notice that it uses some MPL. Does MPL generally not work with Sun CC?
CC: Sun C++ 5.9 SunOS_sparc Patch 124863-12 2009/04/21 CC -I/development/tango/current/misc/boost/boost_1_39_0/SunOS/include/boost-1_39 -c test.cxx -o test.o
test.cxx:
I don't know whether this is the problem, but to use Boost with sun CC, you must pass the argument -library=stlport4 to the compiler. i.e. the default standard library is very non-conformant. In Christ, Steven Watanabe
Chris Hite wrote:
intrusive::slist work with Sun CC? I notice that it uses some MPL. Does MPL generally not work with Sun CC?
No it does not work because it's not conforming enough. Tests are disabled here: http://www.boost.org/development/tests/trunk/developer/intrusive.html See "Sandia-sun" Best, Ion
participants (3)
-
Chris Hite
-
Ion Gaztañaga
-
Steven Watanabe