51 {
return demangle(
typeid( T ).name() ); }
59 {
return demangle(
typeid( T ).name() ); }
130 m_previousExceptions( disableFloatingPointExceptions( exceptions ) )
141 int const m_previousExceptions;
std::string demangleType()
void resetSignalHandling()
Rest the signal handling back to the original state.
std::string stackTrace(bool const lineInfo)
Return a demangled stack trace of the last 25 frames.
void setErrorHandler(std::function< void() > const &handler)
Set the error handler called by LVARRAY_ERROR and others.
Changes the floating point environment and reverts it when destoyed.
int getDefaultFloatingPointExceptions()
Get the default set of exceptions to check.
void stackTraceHandler(int const sig, bool const exit)
Print signal information and a stack trace to standard out, optionally aborting.
int enableFloatingPointExceptions(int const exceptions=getDefaultFloatingPointExceptions())
A wrapper around feenableexcept that work on OSX.
void setSignalHandling(void(*handler)(int))
Set the signal handler for common signals.
void setFPE()
Sets the floating point environment.
int disableFloatingPointExceptions(int const exceptions=getDefaultFloatingPointExceptions())
A wrapper around fedisableexcept that work on OSX.
std::string string
String type.
std::string demangle(char const *const name)
void callErrorHandler()
Call the error handler, by default this is std::abort.
~FloatingPointExceptionGuard()
Re-enable the floating point exceptions that were active on construction.
FloatingPointExceptionGuard(int const exceptions=getDefaultFloatingPointExceptions())
Disable the floating point exceptions given by exceptions.
std::string calculateSize(size_t const bytes)