45 #if defined(_MSC_VER) && !defined(SC_WIN_DLL_WARN) 46 # pragma warning(push) 47 # pragma warning(disable:4275) // ignore missing std::exception DLL export 136 const
char * get_msg_type() const;
138 const
char * get_msg()
const 151 {
return *timestamp; }
153 const char* get_process_name()
const;
159 virtual const char*
what()
const throw()
187 static const char* get_message(
int id);
188 static bool is_suppressed(
int id);
189 static void make_warnings_errors(
bool);
190 static void register_id(
int id,
const char* msg);
191 static void suppress_id(
int id,
bool);
192 static void suppress_infos(
bool);
193 static void suppress_warnings(
bool);
207 #define SC_REPORT_INFO( msg_type, msg ) \ 208 ::sc_core::sc_report_handler::report( \ 209 ::sc_core::SC_INFO, msg_type, msg, __FILE__, __LINE__ ) 212 #define SC_REPORT_INFO_VERB( msg_type, msg, verbosity ) \ 213 ::sc_core::sc_report_handler::report( \ 214 ::sc_core::SC_INFO, msg_type, msg, verbosity, \ 215 __FILE__ , __LINE__ ) 218 #define SC_REPORT_WARNING( msg_type, msg ) \ 219 ::sc_core::sc_report_handler::report( \ 220 ::sc_core::SC_WARNING, msg_type, msg, __FILE__, __LINE__ ) 223 #define SC_REPORT_ERROR( msg_type, msg ) \ 224 ::sc_core::sc_report_handler::report( \ 225 ::sc_core::SC_ERROR, msg_type, msg, __FILE__, __LINE__ ) 228 #define SC_REPORT_FATAL( msg_type, msg ) \ 229 ::sc_core::sc_report_handler::report( \ 230 ::sc_core::SC_FATAL, msg_type, msg, __FILE__, __LINE__ ) 234 #if SC_CPLUSPLUS >= 201103L && (!defined(_MSC_VER) || _MSC_VER >= 1900) 236 # define SC_NORETURN_ [[noreturn]] 238 # if defined(_MSC_VER) 239 # define SC_NORETURN_ __declspec(noreturn) 240 # elif defined(__GNUC__) || defined(__MINGW32__) || defined(__clang__) 241 # define SC_NORETURN_ __attribute__((noreturn)) 243 # define SC_NORETURN_ 245 #endif // SC_NORETURN_ 263 #if defined(NDEBUG) && !defined(SC_ENABLE_ASSERTIONS) // disable assertions 265 #define sc_assert(expr) \ 268 #else // enable assertions 270 #define sc_assert(expr) \ 271 ((void)((expr) ? 0 : \ 272 (::sc_core::sc_assertion_failed(#expr,__FILE__,__LINE__),0))) 274 #endif // defined(NDEBUG) && !defined(SC_ENABLE_ASSERTIONS) 294 #if defined(_MSC_VER) && !defined(SC_WIN_DLL_WARN) 295 # pragma warning(pop) 342 #endif // SC_REPORT_H
const char * get_file_name() const
indicates a definite problem
Abstract base class of all SystemC `simulation' objects.
SC_API const std::string sc_report_compose_message(const sc_report &)
look for lower-priority rule
take no action (ignore if other bits set)
indicates a problem from which we cannot recover
Exception message definition structure.
SC_API const char SC_ID_OUT_OF_BOUNDS_[]
SC_API const char SC_ID_UNKNOWN_ERROR_[]
indicates potentially incorrect condition
SC_API sc_report * sc_handle_exception()
virtual const char * what() const
SC_API const char SC_ID_ABORT_[]
SC_API const char SC_ID_INTERNAL_ERROR_[]
SC_API const char SC_ID_NOT_IMPLEMENTED_[]
std::exception sc_exception
sc_severity
Enumeration of possible exception severity levels.
SC_API const char SC_ID_REGISTER_ID_FAILED_[]
SC_API const char SC_ID_ASSERTION_FAILED_[]
SC_API const char SC_ID_WITHOUT_MESSAGE_[]
SC_NORETURN_ SC_API void sc_assertion_failed(const char *msg, const char *file, int line)
call sc_interrupt_here(...)
int get_verbosity() const
const sc_time & get_time() const
int get_line_number() const
SC_NORETURN_ SC_API void sc_abort()
sc_severity get_severity() const