diff options
Diffstat (limited to 'src/boost/libs/exception/test/errno_test.cpp')
-rw-r--r-- | src/boost/libs/exception/test/errno_test.cpp | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/boost/libs/exception/test/errno_test.cpp b/src/boost/libs/exception/test/errno_test.cpp new file mode 100644 index 00000000..9324d6b3 --- /dev/null +++ b/src/boost/libs/exception/test/errno_test.cpp @@ -0,0 +1,34 @@ +//Copyright (c) 2006-2009 Emil Dotchevski and Reverge Studios, Inc. + +//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/exception/get_error_info.hpp> +#include <boost/exception/info.hpp> +#include <boost/detail/lightweight_test.hpp> +#include <boost/detail/workaround.hpp> +#include <errno.h> + +typedef boost::error_info<struct tag_errno,int> info_errno; + +class +my_exception: + public boost::exception + { + }; + +int +main() + { + try + { + errno=1; + throw my_exception() << info_errno(errno); + } + catch( + my_exception & x ) + { + BOOST_TEST(1==*boost::get_error_info<info_errno>(x)); + } + return boost::report_errors(); + } |