5 Feb
2014
5 Feb
'14
1:32 p.m.
VC11 appears to not define BOOST_NO_CXX11_ALLOCATOR. However, as std::allocator_traits contains two template aliases, rebind_alloc and rebind_traits, and VC11 doesn't support template aliases, it has nonstandard definitions of these two. This is obviously a problem for code that wants to use std::allocator_traits. One way to fix that is for the user code to check BOOST_NO_CXX11_TEMPLATE_ALIASES and if so, refrain from using std::allocator_traits. Another is to just not define BOOST_NO_CXX11_ALLOCATOR for VC11. (VC12 is conforming.) I tend to be in favor of the second option, as the effect would essentially be the same.