/I "J:\boost_1_29_0" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /Gm /EHsc /RTC1 /MLd /GS /Fo"Debug/" /Fd"Debug/vc70.pdb" /W3 /nologo /c /Wp64 /Zi /TP ------ Build started: Project: Minimal_test_test, Configuration: Debug Win32 ------ Compiling... minimal_test.cpp J:\boost_1_29_0\libs\test\src\execution_monitor.cpp(148) : warning C4535: calling _set_se_translator() requires /EHa the command line options /EHc and /GX are insufficient Linking... Build log was saved at "file://j:\Cpp\Test\Minimal_test_test\Debug\BuildLog.htm" Minimal_test_test - 0 error(s), 1 warning(s) ---------------------- Done ---------------------- Build: 1 succeeded, 0 failed, 0 skipped calling _set_se_translator() requires /EHa The use of _set_se_translator requires the /EHa compiler option and not /EHs. The compiler continues the compilation as if /EHa has been specified. Handles Win32 exceptions (C structured exceptions) as C++ typed exceptions. _se_translator_function _set_se_translator( _se_translator_function se_trans_func ); Parameter se_trans_func Pointer to a C structured exception translator function that you write. Return Value Returns a pointer to the previous translator function registered by _set_se_translator, so that the previous function can be restored later. If no previous function has been set, the return value may be used to restore the default behavior; this value may be NULL. Remarks The _set_se_translator function provides a way to handle Win32 exceptions (C structured exceptions) as C++ typed exceptions. To allow each C exception to be handled by a C++ catch handler, first define a C exception wrapper class that can be used, or derived from, to attribute a specific class type to a C exception. To use this class, install a custom C exception translator function that is called by the internal exception-handling mechanism each time a C exception is raised. Within your translator function, you can throw any typed exception that can be caught by a matching C++ catch handler. To specify a custom translation function, call _set_se_translator with the name of your translation function as its argument. The translator function that you write is called once for each function invocation on the stack that has try blocks. There is no default translator function. In a multithreaded environment, translator functions are maintained separately for each thread. Each new thread needs to install its own translator function. Thus, each thread is in charge of its own translation handling. The se_trans_func function that you write must take an unsigned integer and a pointer to a Win32 _EXCEPTION_POINTERS structure as arguments. The arguments are the return values of calls to the Win32 API GetExceptionCode and GetExceptionInformation functions, respectively. typedef void (*_se_translator_function)(unsigned int, struct _EXCEPTION_POINTERS* ); Requirements Routine Required header Compatibility _set_se_translator Win 98, Win Me, Win NT, Win 2000, Win XP For additional compatibility information, see Compatibility in the Introduction. Libraries All versions of the C run-time libraries. Example /* SETRANS.CPP */