[Container][Interprocess] Can't use map with incomplete type and interprocess allocator
The following code gives me a compiler error on Visual Studio 2010 with both Boost 1.48 and 1.49beta1:
#include <string>
#include
Which results in boost::container::container_detail::is_convertable
U=boost::container::container_detail::version_type< boost::interprocess::allocator<...>, 2
Somehow (I'm quite fuzzy on this), this results in boost::container::container_detail::rbtree_node
El 07/02/2012 20:12, Jensen, Erik A escribió:
The following code gives me a compiler error on Visual Studio 2010 with both Boost 1.48 and 1.49beta1:
There is no guarantee that you can build containers of incomplete types with any allocator type. The allocator might need to instantiate the type (say, because it uses sizeof(T) to calculate some compile-time internal static constants). Nevertheless, I would like to see if this is possible for Boost.Container and some basic Boost.Interprocess allocators. Can you please fill a bug on the track so that this issue is not forgotten? Best, Ion
On Tuesday, February 07, 2012 2:03 PM, Ion Gaztañaga wrote:
El 07/02/2012 20:12, Jensen, Erik A escribió:
The following code gives me a compiler error on Visual Studio 2010 with both Boost 1.48 and 1.49beta1:
There is no guarantee that you can build containers of incomplete types with any allocator type. The allocator might need to instantiate the type (say, because it uses sizeof(T) to calculate some compile-time internal static constants).
It definitely makes sense that some allocators wouldn't support incomplete types. In this case, however, the allocator itself can be instantiated without issue (T is only used in typedefs and member functions).
Nevertheless, I would like to see if this is possible for Boost.Container and some basic Boost.Interprocess allocators. Can you please fill a bug on the track so that this issue is not forgotten?
Ticket #6533 (https://svn.boost.org/trac/boost/ticket/6533)
Best,
Ion
Thanks again for your help, Erik Jensen
participants (2)
-
Ion Gaztañaga
-
Jensen, Erik A