1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- // (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;
- }
- }
|