Add two more exception-handling=off tests

This commit is contained in:
Peter Dimov
2019-11-26 02:57:18 +02:00
parent 8a1382d6bf
commit f477e33259
3 changed files with 57 additions and 0 deletions

View File

@ -24,3 +24,6 @@ lib lib3_throw : lib3_throw.cpp : <define>LIB3_SOURCE=1 <link>shared:<define>LIB
run throw_from_library_test.cpp lib1_throw lib2_throw lib3_throw : : : <link>static : throw_from_library_static ;
run throw_from_library_test.cpp lib1_throw lib2_throw lib3_throw : : : <link>shared : throw_from_library_shared ;
run throw_exception_nx_test.cpp : : : <exception-handling>off ;
run throw_exception_nx_test2.cpp : : : <exception-handling>off ;

View File

@ -0,0 +1,24 @@
// Copyright 2019 Peter Dimov
// Distributed under the Boost Software License, Version 1.0.
// http://www.boost.org/LICENSE_1_0.txt
#include <boost/throw_exception.hpp>
#include <cstdlib>
class my_exception: public std::exception {};
int main()
{
boost::throw_exception( my_exception() );
return 1;
}
namespace boost
{
void throw_exception( std::exception const & )
{
std::exit( 0 );
}
} // namespace boost

View File

@ -0,0 +1,30 @@
// Copyright 2019 Peter Dimov
// Distributed under the Boost Software License, Version 1.0.
// http://www.boost.org/LICENSE_1_0.txt
#include <boost/throw_exception.hpp>
#include <cstdlib>
#include <cstring>
class my_exception: public std::exception {};
int main()
{
BOOST_THROW_EXCEPTION( my_exception() );
return 1;
}
namespace boost
{
void throw_exception( std::exception const &, boost::source_location const & loc )
{
int r = 0;
if( std::strcmp( loc.file_name(), __FILE__ ) != 0 ) ++r;
if( loc.line() != 13 ) ++r;
std::exit( r );
}
} // namespace boost