id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 9424,Build failures using unordered and Sun 5.12 compiler,lukester_null@…,Daniel James," {{{ #include int main(int argc, char *argv[]) { return 0; } }}} Yields {{{ ""../boost_1_55_0/boost/unordered/detail/allocate.hpp"", line 908: Error: Templates can only declare classes or functions. ""../boost_1_55_0/boost/unordered/detail/allocate.hpp"", line 908: Error: Templates can only declare classes or functions. ""../boost_1_55_0/boost/unordered/detail/allocate.hpp"", line 908: Error: Templates can only declare classes or functions. ""../boost_1_55_0/boost/unordered/detail/allocate.hpp"", line 908: Error: }}} Looks like the scoping of the length template is wrong: {{{ --- allocate.hpp-orig 2013-11-22 15:36:29.556400000 +0000 +++ allocate.hpp 2013-11-22 15:50:13.154595000 +0000 @@ -879,7 +879,7 @@ # define BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE(n, namespace_) \ template \ void construct_from_tuple_impl( \ - boost::unordered::detail::length<0>, Alloc&, T* ptr, \ + boost::unordered::detail::func::length<0>, Alloc&, T* ptr, \ namespace_ tuple<>) \ { \ new ((void*) ptr) T(); \ @@ -892,7 +892,7 @@ template \ void construct_from_tuple_impl( \ - boost::unordered::detail::length, Alloc&, T* ptr, \ + boost::unordered::detail::func::length, Alloc&, T* ptr, \ namespace_ tuple const& x) \ { \ new ((void*) ptr) T( \ @@ -921,7 +921,7 @@ void construct_from_tuple(Alloc& alloc, T* ptr, Tuple const& x) { construct_from_tuple_impl( - boost::unordered::detail::length< + boost::unordered::detail::func::length< boost::tuples::length::value>(), alloc, ptr, x); } }}} Thanks Luke Elliott. ",Bugs,closed,To Be Determined,unordered,Boost 1.55.0,Problem,fixed,,