GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Functions | Variables
break-catch-throw.c File Reference
#include "defs.h"
#include "arch-utils.h"
#include <ctype.h>
#include "breakpoint.h"
#include "gdbcmd.h"
#include "inferior.h"
#include "annotate.h"
#include "valprint.h"
#include "cli/cli-utils.h"
#include "completer.h"
#include "gdbsupport/gdb_obstack.h"
#include "mi/mi-common.h"
#include "linespec.h"
#include "probe.h"
#include "objfiles.h"
#include "cp-abi.h"
#include "gdbsupport/gdb_regex.h"
#include "cp-support.h"
#include "location.h"
#include "cli/cli-decode.h"

Go to the source code of this file.

Classes

struct  exception_names
 
struct  exception_catchpoint
 

Functions

bool is_exception_catchpoint (breakpoint *bp)
 
static void fetch_probe_arguments (struct value **arg0, struct value **arg1)
 
static void handle_gnu_v3_exceptions (int tempflag, std::string &&except_rx, const char *cond_string, enum exception_event_kind ex_event, int from_tty)
 
static std::string extract_exception_regexp (const char **string)
 
void catch_exception_event (enum exception_event_kind ex_event, const char *arg, bool tempflag, int from_tty)
 
static void catch_catch_command (const char *arg, int from_tty, struct cmd_list_element *command)
 
static void catch_throw_command (const char *arg, int from_tty, struct cmd_list_element *command)
 
static void catch_rethrow_command (const char *arg, int from_tty, struct cmd_list_element *command)
 
static struct valuecompute_exception (struct gdbarch *argc, struct internalvar *var, void *ignore)
 
void _initialize_break_catch_throw ()
 

Variables

static const struct exception_names exception_functions []
 
static const struct internalvar_funcs exception_funcs
 

Function Documentation

◆ _initialize_break_catch_throw()

void _initialize_break_catch_throw ( )

Definition at line 505 of file break-catch-throw.c.

Referenced by initialize_all_files().

◆ catch_catch_command()

static void catch_catch_command ( const char * arg,
int from_tty,
struct cmd_list_element * command )
static

◆ catch_exception_event()

void catch_exception_event ( enum exception_event_kind ex_event,
const char * arg,
bool tempflag,
int from_tty )

◆ catch_rethrow_command()

static void catch_rethrow_command ( const char * arg,
int from_tty,
struct cmd_list_element * command )
static

◆ catch_throw_command()

static void catch_throw_command ( const char * arg,
int from_tty,
struct cmd_list_element * command )
static

◆ compute_exception()

static struct value * compute_exception ( struct gdbarch * argc,
struct internalvar * var,
void * ignore )
static

◆ extract_exception_regexp()

static std::string extract_exception_regexp ( const char ** string)
static

Definition at line 384 of file break-catch-throw.c.

References check_for_argument().

Referenced by catch_exception_event().

◆ fetch_probe_arguments()

static void fetch_probe_arguments ( struct value ** arg0,
struct value ** arg1 )
static

◆ handle_gnu_v3_exceptions()

static void handle_gnu_v3_exceptions ( int tempflag,
std::string && except_rx,
const char * cond_string,
enum exception_event_kind ex_event,
int from_tty )
static

Definition at line 360 of file break-catch-throw.c.

References get_current_arch(), and install_breakpoint().

Referenced by catch_exception_event().

◆ is_exception_catchpoint()

bool is_exception_catchpoint ( breakpoint * bp)

Definition at line 115 of file break-catch-throw.c.

References bp.

Referenced by print_one_breakpoint(), and print_one_breakpoint_location().

Variable Documentation

◆ exception_funcs

const struct internalvar_funcs exception_funcs
static
Initial value:
=
{
NULL,
}
static struct value * compute_exception(struct gdbarch *argc, struct internalvar *var, void *ignore)

Definition at line 495 of file break-catch-throw.c.

◆ exception_functions

const struct exception_names exception_functions[]
static
Initial value:
=
{
{ "-probe-stap libstdcxx:throw", "__cxa_throw" },
{ "-probe-stap libstdcxx:rethrow", "__cxa_rethrow" },
{ "-probe-stap libstdcxx:catch", "__cxa_begin_catch" }
}

Definition at line 59 of file break-catch-throw.c.

Referenced by exception_catchpoint::re_set().