26 #if defined (HAVE_CONFIG_H)
68 std::string execution_exception::stack_trace (
void)
const
70 size_t nframes = m_stack_info.size ();
73 return std::string ();
75 std::ostringstream buf;
77 buf <<
"error: called from\n";
79 for (
const auto& frm : m_stack_info)
81 buf <<
" " << frm.fcn_name ();
87 buf <<
" at line " <<
line;
89 int column = frm.column ();
92 buf <<
" column " << column;
101 void execution_exception::display (std::ostream& os)
const
103 if (! m_message.empty ())
105 os << m_err_type <<
": " << m_message;
107 if (m_message.back () !=
'\n')
111 std::string st = stack_trace ();
130 throw octave::interrupt_exception ();
141 throw octave::interrupt_exception ();
152 throw octave::execution_exception ();
161 throw std::bad_alloc ();
172 throw octave::interrupt_exception ();
179 throw octave::execution_exception ();
183 throw std::bad_alloc ();
line(const graphics_handle &mh, const graphics_handle &p)
static sig_atomic_t internal_exception_state
void(* octave_bad_alloc_hook)(void)
octave_internal_exception
@ octave_internal_alloc_exception
@ octave_internal_no_exception
@ octave_internal_quit_exception
@ octave_internal_exec_exception
volatile sig_atomic_t octave_signal_caught
void octave_rethrow_exception(void)
void octave_throw_bad_alloc(void)
sig_atomic_t octave_interrupt_state
void octave_throw_interrupt_exception(void)
void(* octave_interrupt_hook)(void)
sig_atomic_t octave_exception_state
void(* octave_signal_hook)(void)
void octave_handle_signal(void)
void octave_throw_execution_exception(void)