Compare commits

...

3 Commits

Author SHA1 Message Date
nobody
ae826d17dc This commit was manufactured by cvs2svn to create tag 'RC_1_30_2'.
[SVN r19443]
2003-08-04 17:55:28 +00:00
nobody
dc294f7225 This commit was manufactured by cvs2svn to create branch 'RC_1_30_0'.
[SVN r19146]
2003-07-16 10:53:07 +00:00
nobody
3dffb91af6 This commit was manufactured by cvs2svn to create branch 'RC_1_30_0'.
[SVN r17693]
2003-03-01 19:43:06 +00:00

View File

@@ -1,8 +1,8 @@
#ifndef BOOST_CHECKED_DELETE_HPP_INCLUDED #ifndef BOOST_CHECKED_DELETE_HPP_INCLUDED
#define BOOST_CHECKED_DELETE_HPP_INCLUDED #define BOOST_CHECKED_DELETE_HPP_INCLUDED
#if _MSC_VER >= 1020 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once # pragma once
#endif #endif
// //
@@ -26,13 +26,14 @@ namespace boost
template<class T> inline void checked_delete(T * x) template<class T> inline void checked_delete(T * x)
{ {
typedef char type_must_be_complete[sizeof(T)]; // Intel 7 accepts sizeof(incomplete) as 0 in system headers
typedef char type_must_be_complete[ sizeof(T)? 1: -1 ];
delete x; delete x;
} }
template<class T> inline void checked_array_delete(T * x) template<class T> inline void checked_array_delete(T * x)
{ {
typedef char type_must_be_complete[sizeof(T)]; typedef char type_must_be_complete[ sizeof(T)? 1: -1 ];
delete [] x; delete [] x;
} }
@@ -43,6 +44,7 @@ template<class T> struct checked_deleter
void operator()(T * x) const void operator()(T * x) const
{ {
// boost:: disables ADL
boost::checked_delete(x); boost::checked_delete(x);
} }
}; };