|
GDB (xrefs)
|
#include "defs.h"#include "gdb_obstack.h"#include "symtab.h"#include "gdbtypes.h"#include "expression.h"#include "value.h"#include "command.h"#include "gdbcmd.h"#include "demangle.h"#include "annotate.h"#include "c-lang.h"#include "target.h"#include "cp-abi.h"#include "valprint.h"#include "cp-support.h"#include "language.h"#include "extension.h"#include "typeprint.h"#include "byte-vector.h"Go to the source code of this file.
Functions | |
| static void | show_vtblprint (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value) |
| static void | show_objectprint (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value) |
| static void | show_static_field_print (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value) |
| static void | cp_print_static_field (struct type *, struct value *, struct ui_file *, int, const struct value_print_options *) |
| static void | cp_print_value (struct type *, struct type *, LONGEST, CORE_ADDR, struct ui_file *, int, struct value *, const struct value_print_options *, struct type **) |
| int | cp_is_vtbl_ptr_type (struct type *type) |
| int | cp_is_vtbl_member (struct type *type) |
| void | cp_print_value_fields (struct type *type, struct type *real_type, LONGEST offset, CORE_ADDR address, struct ui_file *stream, int recurse, struct value *val, const struct value_print_options *options, struct type **dont_print_vb, int dont_print_statmem) |
| void | cp_print_value_fields_rtti (struct type *type, const gdb_byte *valaddr, LONGEST offset, CORE_ADDR address, struct ui_file *stream, int recurse, struct value *val, const struct value_print_options *options, struct type **dont_print_vb, int dont_print_statmem) |
| static void | cp_find_class_member (struct type **self_p, int *fieldno, LONGEST offset) |
| void | cp_print_class_member (const gdb_byte *valaddr, struct type *type, struct ui_file *stream, const char *prefix) |
| void | _initialize_cp_valprint (void) |
Variables | |
| static struct obstack | dont_print_vb_obstack |
| static struct obstack | dont_print_statmem_obstack |
| static struct obstack | dont_print_stat_array_obstack |
| const char | vtbl_ptr_name [] = "__vtbl_ptr_type" |
| void _initialize_cp_valprint | ( | void | ) |
Definition at line 804 of file cp-valprint.c.
References _, add_setshow_boolean_cmd(), class_support, dont_print_stat_array_obstack, dont_print_statmem_obstack, dont_print_vb_obstack, value_print_options::objectprint, setprintlist, show_objectprint(), show_static_field_print(), show_vtblprint(), showprintlist, value_print_options::static_field_print, user_print_options, and value_print_options::vtblprint.
Definition at line 711 of file cp-valprint.c.
References check_typedef(), offset, QUIT, TYPE_FIELD_BITPOS, TYPE_FIELD_TYPE, TYPE_LENGTH, TYPE_N_BASECLASSES, and TYPE_NFIELDS.
Referenced by cp_print_class_member().
| int cp_is_vtbl_member | ( | struct type * | type | ) |
Definition at line 107 of file cp-valprint.c.
References cp_is_vtbl_ptr_type(), TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_PTR, TYPE_CODE_STRUCT, and TYPE_TARGET_TYPE.
Referenced by print_unpacked_pointer().
| int cp_is_vtbl_ptr_type | ( | struct type * | type | ) |
Definition at line 96 of file cp-valprint.c.
References type_name_no_tag(), and vtbl_ptr_name.
Referenced by c_val_print_array(), c_val_print_ptr(), c_val_print_struct(), and cp_is_vtbl_member().
| void cp_print_class_member | ( | const gdb_byte * | valaddr, |
| struct type * | type, | ||
| struct ui_file * | stream, | ||
| const char * | prefix | ||
| ) |
Definition at line 751 of file cp-valprint.c.
References c_type_print_base(), cp_find_class_member(), extract_signed_integer(), fprintf_filtered(), fputs_filtered(), gdbarch_byte_order(), get_type_arch(), name, TYPE_FIELD_NAME, TYPE_LENGTH, type_name_no_tag(), type_print_raw_options, and TYPE_SELF_TYPE.
Referenced by c_val_print_memberptr().
|
static |
Definition at line 622 of file cp-valprint.c.
References check_typedef(), cp_print_value_fields(), current_language, value_print_options::deref_ref, dont_print_stat_array_obstack, dont_print_statmem_obstack, fputs_filtered(), TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_STRUCT, TYPE_TARGET_TYPE, val_print(), val_print_optimized_out(), value_address(), value_embedded_offset(), value_enclosing_type(), and value_entirely_optimized_out().
Referenced by cp_print_value_fields().
|
static |
Definition at line 458 of file cp-valprint.c.
References apply_ext_lang_val_pretty_printer(), baseclass_offset(), BASETYPE_VIA_VIRTUAL, CATCH, check_typedef(), cp_print_value_fields(), current_language, dont_print_vb_obstack, END_CATCH, fprintf_filtered(), fputs_filtered(), NOT_AVAILABLE_ERROR, offset, value_print_options::prettyformat, print_spaces_filtered(), value_print_options::raw, RETURN_MASK_ERROR, target_read_memory(), TRY, TYPE_BASECLASS, TYPE_LENGTH, TYPE_N_BASECLASSES, TYPE_NAME, val_print_invalid_address(), val_print_unavailable(), value_address(), value_contents_for_printing(), value_from_contents_and_address(), and value_type().
Referenced by cp_print_value_fields().
| void cp_print_value_fields | ( | struct type * | type, |
| struct type * | real_type, | ||
| LONGEST | offset, | ||
| CORE_ADDR | address, | ||
| struct ui_file * | stream, | ||
| int | recurse, | ||
| struct value * | val, | ||
| const struct value_print_options * | options, | ||
| struct type ** | dont_print_vb, | ||
| int | dont_print_statmem | ||
| ) |
Definition at line 155 of file cp-valprint.c.
References _, annotate_field_begin(), annotate_field_end(), annotate_field_name_end(), annotate_field_value(), CATCH, check_typedef(), common_val_print(), cp_print_static_field(), cp_print_value(), current_language, value_print_options::deref_ref, dont_print_stat_array_obstack, dont_print_statmem_obstack, END_CATCH, extract_typed_address(), field_is_static(), fprintf_filtered(), fprintf_symbol_filtered(), fputs_filtered(), get_type_arch(), get_vptr_fieldno(), language_defn::la_language, n_spaces(), offset, value_print_options::prettyformat, print_function_pointer_address(), print_spaces_filtered(), RETURN_MASK_ERROR, value_print_options::static_field_print, TRY, TYPE_FIELD, TYPE_FIELD_BITPOS, TYPE_FIELD_BITSIZE, TYPE_FIELD_IGNORE, TYPE_FIELD_NAME, TYPE_FIELD_PACKED, TYPE_FIELD_TYPE, TYPE_N_BASECLASSES, type_name_no_tag(), TYPE_NFIELDS, val_print(), valprint_check_validity(), value_bits_synthetic_pointer(), value_contents_for_printing(), value_field_bitfield(), value_static_field(), and wrap_here().
Referenced by cp_print_static_field(), cp_print_value(), cp_print_value_fields_rtti(), and m2_val_print().
| void cp_print_value_fields_rtti | ( | struct type * | type, |
| const gdb_byte * | valaddr, | ||
| LONGEST | offset, | ||
| CORE_ADDR | address, | ||
| struct ui_file * | stream, | ||
| int | recurse, | ||
| struct value * | val, | ||
| const struct value_print_options * | options, | ||
| struct type ** | dont_print_vb, | ||
| int | dont_print_statmem | ||
| ) |
Definition at line 415 of file cp-valprint.c.
References value::address, cp_print_value_fields(), offset, TARGET_CHAR_BIT, type, TYPE_LENGTH, value_bits_any_optimized_out(), value_from_contents_and_address(), value_rtti_type(), and value_type().
Referenced by c_val_print_struct().
|
static |
Definition at line 53 of file cp-valprint.c.
References _, and fprintf_filtered().
Referenced by _initialize_cp_valprint().
|
static |
Definition at line 63 of file cp-valprint.c.
References _, and fprintf_filtered().
Referenced by _initialize_cp_valprint().
|
static |
Definition at line 42 of file cp-valprint.c.
References _, and fprintf_filtered().
Referenced by _initialize_cp_valprint().
|
static |
Definition at line 75 of file cp-valprint.c.
Referenced by _initialize_cp_valprint(), cp_print_static_field(), and cp_print_value_fields().
|
static |
Definition at line 74 of file cp-valprint.c.
Referenced by _initialize_cp_valprint(), cp_print_static_field(), and cp_print_value_fields().
|
static |
Definition at line 73 of file cp-valprint.c.
Referenced by _initialize_cp_valprint(), and cp_print_value().
| const char vtbl_ptr_name[] = "__vtbl_ptr_type" |
Referenced by cp_is_vtbl_ptr_type(), and define_symbol().
1.8.14