12345678910111213141516171819202122232425262728293031323334 |
- //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();
- }
|