forked from boostorg/smart_ptr
Negative test for conversion to void*
[SVN r37756]
This commit is contained in:
@ -36,6 +36,7 @@ DEPENDS all : smart_ptr ;
|
|||||||
[ run shared_ptr_alias_test.cpp ]
|
[ run shared_ptr_alias_test.cpp ]
|
||||||
[ run shared_ptr_rv_test.cpp ]
|
[ run shared_ptr_rv_test.cpp ]
|
||||||
[ run shared_ptr_move_test.cpp ]
|
[ run shared_ptr_move_test.cpp ]
|
||||||
|
[ compile-fail shared_ptr_pv_fail.cpp ]
|
||||||
;
|
;
|
||||||
|
|
||||||
# this one is too slow to run unless explicitly requested, and ALL
|
# this one is too slow to run unless explicitly requested, and ALL
|
||||||
|
@ -31,5 +31,6 @@ import testing ;
|
|||||||
[ run shared_ptr_alias_test.cpp ]
|
[ run shared_ptr_alias_test.cpp ]
|
||||||
[ run shared_ptr_rv_test.cpp ]
|
[ run shared_ptr_rv_test.cpp ]
|
||||||
[ run shared_ptr_move_test.cpp ]
|
[ run shared_ptr_move_test.cpp ]
|
||||||
|
[ compile-fail shared_ptr_pv_fail.cpp ]
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
31
test/shared_ptr_pv_fail.cpp
Normal file
31
test/shared_ptr_pv_fail.cpp
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
#include <boost/config.hpp>
|
||||||
|
|
||||||
|
#if defined(BOOST_MSVC)
|
||||||
|
#pragma warning(disable: 4786) // identifier truncated in debug info
|
||||||
|
#pragma warning(disable: 4710) // function not inlined
|
||||||
|
#pragma warning(disable: 4711) // function selected for automatic inline expansion
|
||||||
|
#pragma warning(disable: 4514) // unreferenced inline removed
|
||||||
|
#endif
|
||||||
|
|
||||||
|
//
|
||||||
|
// shared_ptr_pv_fail.cpp - a negative test for converting a shared_ptr to void*
|
||||||
|
//
|
||||||
|
// Copyright 2007 Peter Dimov
|
||||||
|
//
|
||||||
|
// Distributed under 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
|
||||||
|
//
|
||||||
|
|
||||||
|
#include <boost/shared_ptr.hpp>
|
||||||
|
|
||||||
|
void f( void* )
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
boost::shared_ptr<int> p;
|
||||||
|
f( p ); // must fail
|
||||||
|
return 0;
|
||||||
|
}
|
Reference in New Issue
Block a user