1 // boost utility.hpp header file -------------------------------------------//
3 // (C) Copyright boost.org 1999. Permission to copy, use, modify, sell
4 // and distribute this software is granted provided this copyright
5 // notice appears in all copies. This software is provided "as is" without
6 // express or implied warranty, and with no claim as to its suitability for
9 // See http://www.boost.org for most recent version including documentation.
11 // Classes appear in alphabetical order
14 // 21 May 01 checked_delete() and checked_array_delete() added (Beman Dawes,
15 // suggested by Dave Abrahams, generalizing idea from Vladimir Prus)
16 // 21 May 01 made next() and prior() inline (Beman Dawes)
17 // 26 Jan 00 protected noncopyable destructor added (Miki Jovanovic)
18 // 10 Dec 99 next() and prior() templates added (Dave Abrahams)
19 // 30 Aug 99 moved cast templates to cast.hpp (Beman Dawes)
20 // 3 Aug 99 cast templates added
21 // 20 Jul 99 name changed to utility.hpp
22 // 9 Jun 99 protected noncopyable default ctor
23 // 2 Jun 99 Initial Version. Class noncopyable only contents (Dave Abrahams)
28 #include <boost/config.hpp> // broken compiler workarounds
29 #include <boost/static_assert.hpp>
30 //#include <cstddef> // for size_t
31 //#include <utility> // for std::pair
33 #ifndef CXX_GLOBAL_CSTD
39 // checked_delete() and checked_array_delete() -----------------------------//
41 // verify that types are complete for increased safety
43 template< typename T >
44 inline void checked_delete(T * x)
46 BOOST_STATIC_ASSERT( sizeof(T) != 0 ); // assert type complete at point
53 #endif // BOOST_UTILITY_HPP