You can generate preprocessed output by MSVC. I usually mark the code with some pragmas to easily find it, e.g.
#pragma boost_throw_exception_resolution
typedef boost::error_info<struct tag_action, std::string> action_name;
BOOST_THROW_EXCEPTION(error() << action_name(name));
#pragma end_boost_throw_excepion_resolution
this pragma will survive after pre-processing the file and you can do a simple find to see what was expanded.
Good Luck,
Ovanes.
Igor,
how is BOOST_THROW_EXCEPION defined? The line might expand to
error() << action_name(name);
which does not throw than.
Regards,
OvanesOn Tue, Mar 24, 2009 at 6:28 PM, Igor R <boost.lists@gmail.com> wrote:
Hello all,
A function throws boost::exception as follows:
//....
typedef boost::error_info<struct tag_action, std::string> action_name;
BOOST_THROW_EXCEPTION(error() << action_name(name));
return 0;
Both BOOST_NO_EXCEPTIONS and BOOST_EXCEPTION_DISABLE are *not* defined.
The excpetion is not catched anywhere. However, the thread continues
running! If I put breakpoint at "return 0;" it's hit, and I can
continue stepping the code. I run the program under MSVC 9.0, in debug
mode, and I see "First-chance exception" and "Unhandled exception"
notifications issued by the debugger.
Isn't it wrong behavior, or I miss something?
Thanks,
Igor'.
_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users