21 #ifndef _TBB_assert_impl_H 22 #define _TBB_assert_impl_H 39 #define __TBB_EXPORTED_FUNC __cdecl 41 #define __TBB_EXPORTED_FUNC 45 namespace rml {
namespace internal {
62 (*a)(filename,line,expression,comment);
64 static bool already_failed;
65 if( !already_failed ) {
66 already_failed =
true;
67 fprintf( stderr,
"Assertion %s failed on line %d of file %s\n",
68 expression, line, filename );
70 fprintf( stderr,
"Detailed description: %s\n", comment );
71 #if _MSC_VER && _DEBUG 72 if(1 == _CrtDbgReport(_CRT_ASSERT, filename, line,
"tbb_debug.dll",
"%s\r\n%s", expression, comment?comment:
""))
82 #if defined(_MSC_VER)&&_MSC_VER<1400 83 # define vsnprintf _vsnprintf 86 #if !__TBBMALLOC_BUILD 91 char str[1024]; memset(str, 0, 1024);
92 va_list args; va_start(args, format);
93 vsnprintf( str, 1024-1, format, args);
95 fprintf( stderr,
"TBB Warning: %s\n", str);
100 #if __TBBMALLOC_BUILD void __TBB_EXPORTED_FUNC runtime_warning(const char *format,...)
Report a runtime warning.
#define __TBB_EXPORTED_FUNC
static assertion_handler_type assertion_handler
void __TBB_EXPORTED_FUNC assertion_failure(const char *filename, int line, const char *expression, const char *comment)
Process an assertion failure.
assertion_handler_type __TBB_EXPORTED_FUNC set_assertion_handler(assertion_handler_type new_handler)
Set assertion handler and return previous value of it.
void(* assertion_handler_type)(const char *filename, int line, const char *expression, const char *comment)
Type for an assertion handler.