Opened 9 years ago
Last modified 9 years ago
#9573 new Bugs
type_rebinder<int,type_2,0> template specialization is not found using Sun's compiler 12.3
Reported by: | Owned by: | Ion Gaztañaga | |
---|---|---|---|
Milestone: | To Be Determined | Component: | interprocess |
Version: | Boost 1.55.0 | Severity: | Showstopper |
Keywords: | type_rebinder specialization missing ? | Cc: | vladmir.venediktov@… |
Description
#include <boost/interprocess/managed_mapped_file.hpp>
using namespace boost::interprocess;
typedef boost::interprocess::managed_mapped_file::segment_manager segment_manager_t;
/*
Including those 3 lines above , is like code below when Sun's compiler trying to
specialize type_rebinder<int, second_rebind_type_t, 0> and it does not find it, because of int = Ptr and there is no specialization for that type
Compilation command : /appl/toolbox/solarisstudio12.3/bin/CC -v -library=stdcxx4 -D_XOPEN_SOURCE=500 -I/home/uqadir/boost_1_55/boost _1_55_0/ main.cpp
#include <boost/intrusive/set_hook.hpp>
#include <boost/intrusive/detail/generic_hook.hpp>
#include <boost/interprocess/detail/segment_manager_helper.hpp>
#include <boost/intrusive/pointer_traits.hpp>
#include <boost/intrusive/detail/utilities.hpp>
#include <boost/intrusive/detail/memory_util.hpp>
typedef boost::intrusive::bhtraits<boost::interprocess::ipcdetail::intrusive_value_type_impl< boost::intrusive::generic_hook< boost:
:intrusive::get_set_node_algo<boost::interprocess::offset_ptr<void, int, unsigned, 0>, 1>, boost::intrusive::default_tag, 1, 3>, cha
r, unsigned>, boost::intrusive::rbtree_node_traits< boost::interprocess::offset_ptr<void, int, unsigned, 0>, 1>, 1, boost::intrusive
::default_tag, 3 > second_rebind_type_t ;
typedef boost::intrusive::detail::type_rebinder
<int, second_rebind_type_t, 0>::type my_type; <-- no such specialization in boost
*/
main () { }
Attachments (1)
Change History (4)
by , 9 years ago
comment:1 by , 9 years ago
work around suggested by sun's team
Change: ./boost_1_55_0/boost/intrusive/detail/memory_util.hpp in struct type_has_rebind and struct type_has_rebind_other
From: #if !defined (SUNPRO_CC)
main.cpp