GDBserver

Classes | Macros | Typedefs | Functions
poison.h File Reference
`#include "traits.h"`

Go to the source code of this file.

## Classes
struct | IsMemsettable< T >

## Macros
#define | XNEW(T) xnew<T>()
#define | XCNEW(T) xcnew<T>()
#define | XDELETE(P) xdelete (P)
#define | XNEWVEC(T, N) xnewvec<T> (N)
#define | XCNEWVEC(T, N) xcnewvec<T> (N)
#define | XRESIZEVEC(T, P, N) xresizevec<T> (P, N)
#define | XDELETEVEC(P) xdeletevec (P)
#define | XNEWVAR(T, S) xnewvar<T> (S)
#define | XCNEWVAR(T, S) xcnewvar<T> (S)
#define | XRESIZEVAR(T, P, S) xresizevar<T> (P, S)

## Typedefs
template<typename T >
using | IsMallocable = std::is_pod< T >
template<typename T >
using | IsFreeable = gdb::Or< std::is_trivially_destructible< T >, std::is_void< T > >

## Functions
template<typename T , typename = gdb::Requires<gdb::Not<IsMemsettable<T>>>>
void * | memset (T *s, int c, size_t n)=delete
template<typename T , typename = gdb::Requires<gdb::Not<IsFreeable<T>>>>
void | free (T *ptr)=delete
template<typename T >
static T * | xnew ()
template<typename T >
static T * | xcnew ()
template<typename T >
static void | xdelete (T *p)
template<typename T >
static T * | xnewvec (size_t n)
template<typename T >
static T * | xcnewvec (size_t n)
template<typename T >
static T * | xresizevec (T *p, size_t n)
template<typename T >
static void | xdeletevec (T *p)
template<typename T >
static T * | xnewvar (size_t s)
template<typename T >
static T * | xcnewvar (size_t s)
template<typename T >
static T * | xresizevar (T *p, size_t s)

## Macro Definition Documentation

## ◆ XCNEW

#define XCNEW | ( |  | T | ) | xcnew<T>()

Definition at line 121 of file poison.h.

Referenced by aarch64_linux_new_process(), add_commands_to_breakpoint(), add_condition_to_breakpoint(), add_lwp(), add_thread(), arm_new_process(), arm_new_thread(), child_add_thread(), clone_agent_expr(), clone_one_breakpoint(), debug_reg_change_callback(), enqueue_one_deferred_signal(), exceptions_state_mc_init(), linux_add_process(), lwp_set_debug_registers_changed(), lynx_add_process(), mips_linux_new_process(), mips_linux_new_thread(), new_register_cache(), set_breakpoint(), set_raw_breakpoint_at(), tdesc_create_reg(), try_thread_db_load_1(), x86_linux_new_process(), and xcnew().

## ◆ XCNEWVAR

#define XCNEWVAR | ( |  | T,
|  |  | S
| ) |  | xcnewvar<T> (S)

Definition at line 205 of file poison.h.

Referenced by xcnewvar().

## ◆ XCNEWVEC

#define XCNEWVEC | ( |  | T,
|  |  | N
| ) |  | xcnewvec<T> (N)

Definition at line 157 of file poison.h.

Referenced by linux_xfer_osdata_processes(), and xcnewvec().

## ◆ XDELETE

#define XDELETE | ( |  | P | ) | xdelete (P)

Definition at line 133 of file poison.h.

Referenced by xdelete().

## ◆ XDELETEVEC

#define XDELETEVEC | ( |  | P | ) | xdeletevec (P)

Definition at line 181 of file poison.h.

Referenced by xdeletevec().

## ◆ XNEW

#define XNEW | ( |  | T | ) | xnew<T>()

Definition at line 109 of file poison.h.

Referenced by aarch64_linux_new_thread(), add_to_pid_list(), add_tracepoint(), add_tracepoint_action(), add_while_stepping_state(), append_callback_event(), cmd_qtdpsrc(), cmd_qtro(), compile_bytecodes(), create_file_event(), create_file_handler(), create_trace_state_variable(), enqueue_pending_signal(), gdb_parse_agent_expr(), handle_open(), look_up_one_symbol(), make_cleanup_close(), make_my_cleanup2(), mips_add_watchpoint(), push_stop_notification(), queue_stop_reply(), queue_stop_reply_callback(), set_target_ops(), and xnew().

## ◆ XNEWVAR

#define XNEWVAR | ( |  | T,
|  |  | S
| ) |  | xnewvar<T> (S)

Definition at line 193 of file poison.h.

Referenced by xnewvar().

## ◆ XNEWVEC

#define XNEWVEC | ( |  | T,
|  |  | N
| ) |  | xnewvec<T> (N)

Definition at line 145 of file poison.h.

Referenced by xnewvec().

## ◆ XRESIZEVAR

#define XRESIZEVAR | ( |  | T,
|  |  | P,
|  |  | S
| ) |  | xresizevar<T> (P, S)

Definition at line 217 of file poison.h.

Referenced by xresizevar().

## ◆ XRESIZEVEC

#define XRESIZEVEC | ( |  | T,
|  |  | P,
|  |  | N
| ) |  | xresizevec<T> (P, N)

Definition at line 169 of file poison.h.

Referenced by add_tracepoint_action(), ATTRIBUTE_PRINTF(), handle_query(), and xresizevec().

## Typedef Documentation

## ◆ IsFreeable

template<typename T >

using IsFreeable = gdb::Or<std::is_trivially_destructible<T>, std::is_void<T> >

Definition at line 94 of file poison.h.

## ◆ IsMallocable

template<typename T >

using IsMallocable = std::is_pod<T>

Definition at line 91 of file poison.h.

## Function Documentation

## ◆ free()

template<typename T , typename = gdb::Requires<gdb::Not<IsFreeable<T>>>>

void free | ( | T * | ptr | ) |
| delete

Referenced by arm_read_description(), clear_breakpoint_commands(), clear_breakpoint_conditions(), clear_readonly_regions(), cmd_qtinit(), delete_callback_event(), delete_fast_tracepoint_jump(), delete_file_handler(), delete_lwp(), delete_raw_breakpoint(), delete_thread_info(), dequeue_one_deferred_signal(), free_one_thread(), free_register_cache(), free_sym_cache(), gdb_free_agent_expr(), handle_close(), handle_pread(), handle_pwrite(), handle_query(), handle_qxfer(), handle_qxfer_threads(), handle_qxfer_traceframe_info(), handle_search_memory(), handle_v_cont(), linux_mourn(), linux_resume_one_lwp_throw(), look_up_one_symbol(), lynx_fetch_registers(), lynx_mourn(), lynx_store_registers(), mips_remove_point(), monitor_output(), process_callback(), putpkt_binary_1(), release_breakpoint(), release_while_stepping_state(), relocate_instruction(), require_data(), response_tracepoint(), set_fast_tracepoint_jump(), thread_db_handle_monitor_command(), thread_db_mourn(), try_thread_db_load_1(), try_thread_db_load_from_dir(), write_inferior_memory(), x86_linux_process_qsupported(), and xfree().

## ◆ memset()

template<typename T , typename = gdb::Requires<gdb::Not<IsMemsettable<T>>>>

void* memset | ( | T * | s,
|  | int | c,
|  | size_t | n
| ) |  |
| delete

Referenced by aarch64_compat_siginfo_from_siginfo(), aarch64_linux_set_debug_regs(), aarch64_siginfo_from_compat_siginfo(), agent_expr_send(), arm_store_gregset(), ATTRIBUTE_PRINTF(), buffer_init(), compat_siginfo_from_siginfo(), compat_x32_siginfo_from_siginfo(), do_initial_child_stuff(), enqueue_pending_signal(), fake_breakpoint_event(), get_thread_regcache(), handle_v_cont(), hex_string_custom(), i387_cache_to_xsave(), init_nto_inferior(), init_register_cache(), initialize_low(), mnsh_recv_message(), mnsh_send_message(), nto_create_inferior(), nto_read_auxv_from_initial_stack(), nto_store_registers(), ppc_collect_ptrace_register(), registers_to_string(), s390_collect_ptrace_register(), siginfo_from_compat_siginfo(), siginfo_from_compat_x32_siginfo(), sparc_store_gregset(), spu_read_memory(), spu_write_memory(), startup_inferior(), supply_16bit_register(), supply_regblock(), supply_register(), supply_register_zeroed(), win32_get_thread_context(), and x86_fill_gregset().

## ◆ xcnew()

template<typename T >

static T* xcnew | ( |  | ) |
| static

Definition at line 113 of file poison.h.

References XCNEW.

## ◆ xcnewvar()

template<typename T >

static T* xcnewvar | ( | size_t | s | ) |
| static

Definition at line 197 of file poison.h.

References XCNEWVAR.

## ◆ xcnewvec()

template<typename T >

static T* xcnewvec | ( | size_t | n | ) |
| static

Definition at line 149 of file poison.h.

References XCNEWVEC.

## ◆ xdelete()

template<typename T >

static void xdelete | ( | T * | p | ) |
| static

Definition at line 125 of file poison.h.

References XDELETE.

## ◆ xdeletevec()

template<typename T >

static void xdeletevec | ( | T * | p | ) |
| static

Definition at line 173 of file poison.h.

References XDELETEVEC.

## ◆ xnew()

template<typename T >

static T* xnew | ( |  | ) |
| static

Definition at line 101 of file poison.h.

References XNEW.

## ◆ xnewvar()

template<typename T >

static T* xnewvar | ( | size_t | s | ) |
| static

Definition at line 185 of file poison.h.

References XNEWVAR.

## ◆ xnewvec()

template<typename T >

static T* xnewvec | ( | size_t | n | ) |
| static

Definition at line 137 of file poison.h.

References XNEWVEC.

## ◆ xresizevar()

template<typename T >

static T* xresizevar | ( | T * | p,
|  | size_t | s
| ) |  |
| static

Definition at line 209 of file poison.h.

References XRESIZEVAR.

## ◆ xresizevec()

template<typename T >

static T* xresizevec | ( | T * | p,
|  | size_t | n
| ) |  |
| static

Definition at line 161 of file poison.h.

References XRESIZEVEC.