45 lines
1.5 KiB
C++
45 lines
1.5 KiB
C++
// (C) Copyright John Maddock 2012
|
|
|
|
// Use, modification and distribution are subject to the
|
|
// Boost Software License, Version 1.0. (See accompanying file
|
|
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
|
|
// See http://www.boost.org/libs/config for more information.
|
|
|
|
// MACRO: BOOST_NO_CXX11_ALLOCATOR
|
|
// TITLE: C++11 <memory> doesn't have C++0x allocator support
|
|
// DESCRIPTION: The compiler does not support the C++11 allocator features added to <memory>
|
|
|
|
#include <memory>
|
|
|
|
namespace boost_no_cxx11_allocator {
|
|
|
|
int test()
|
|
{
|
|
std::pointer_traits<char*>* p = 0;
|
|
(void) p;
|
|
//std::pointer_safety s = std::relaxed;
|
|
|
|
//char* (*l_undeclare_reachable)(char *p) = std::undeclare_reachable;
|
|
//void (*l_declare_no_pointers)(char *p, size_t n) = std::declare_no_pointers;
|
|
//void (*l_undeclare_no_pointers)(char *p, size_t n) = std::undeclare_no_pointers;
|
|
//std::pointer_safety (*l_get_pointer_safety)() = std::get_pointer_safety;
|
|
//void* (*l_align)(std::size_t alignment, std::size_t size, void *&ptr, std::size_t& space) = std::align;
|
|
std::allocator_arg_t aat;
|
|
std::uses_allocator<int, std::allocator<int> > ua;
|
|
std::allocator_traits<std::allocator<int> > at;
|
|
std::allocator<int> ia;
|
|
std::allocator_traits<std::allocator<int> >::rebind_alloc<void*> ra(ia);
|
|
std::allocator<void*>* pva = &ra;
|
|
std::allocator_traits<std::allocator<int> >::rebind_traits<void*>::pointer pt;
|
|
|
|
(void)aat;
|
|
(void)ua;
|
|
(void)at;
|
|
(void)pva;
|
|
(void)pt;
|
|
return 0;
|
|
}
|
|
|
|
}
|