40 return (!strcmp (
name,
"wchar_t")
41 || !strcmp (
name,
"char16_t")
42 || !strcmp (
name,
"char32_t"));
59 struct type *true_type, *iter_type;
61 if (format != 0 && format !=
's')
69 if (true_type->
code () == TYPE_CODE_CHAR)
73 if (true_type->
code () != TYPE_CODE_INT)
84 if (iter_type->
code () != TYPE_CODE_TYPEDEF)
100 if (true_type->
code () == TYPE_CODE_INT
101 && true_type->
length () == 1)
109 if (true_type->
code () == TYPE_CODE_INT
110 && true_type->
length () == 1
141 struct type *unresolved_elttype,
142 const gdb_byte *valaddr,
int embedded_offset,
143 CORE_ADDR address,
struct ui_file *stream,
int recurse,
149 if (elttype->
code () == TYPE_CODE_FUNC)
184 && (msymbol.
minsym != NULL)
197 struct value *vt_val;
198 struct symbol *wsym = NULL;
204 if (msymbol.
minsym != NULL)
213 wtype = wsym->
type ();
217 wtype = unresolved_elttype;
219 vt_val =
value_at (wtype, vt_address);
235 struct ui_file *stream,
int recurse,
239 CORE_ADDR address = val->
address ();
246 LONGEST low_bound, high_bound;
251 error (_(
"Could not determine the array high bound"));
253 eltlen = elttype->
length ();
254 len = high_bound - low_bound + 1;
264 int force_ellipses = 0;
271 unsigned int temp_len;
275 && temp_len < print_max_chars
277 eltlen, byte_order) != 0);
284 if (temp_len == print_max_chars && temp_len < len)
297 NULL, force_ellipses, options);
320 0, address, stream, recurse, options);
356 0, addr, stream, recurse, options);
430 case TYPE_CODE_ARRAY:
438 case TYPE_CODE_UNION:
439 case TYPE_CODE_STRUCT:
448 case TYPE_CODE_METHODPTR:
449 case TYPE_CODE_MEMBERPTR:
451 case TYPE_CODE_RVALUE_REF:
453 case TYPE_CODE_FLAGS:
455 case TYPE_CODE_METHOD:
457 case TYPE_CODE_RANGE:
459 case TYPE_CODE_DECFLOAT:
461 case TYPE_CODE_ERROR:
463 case TYPE_CODE_COMPLEX:
480 opts.deref_ref =
true;
493 struct type *original_type = val->
type ();
499 if (original_type->
code () == TYPE_CODE_PTR
500 && original_type->
name () == NULL
568 full, top, using_enc);
578 full ?
"" : _(
" [incomplete object]"));
void cp_print_value_fields(struct value *, struct ui_file *, int, const struct value_print_options *, struct type **, int)
int cp_is_vtbl_member(struct type *)
int cp_is_vtbl_ptr_type(struct type *)
static void c_value_print_int(struct value *val, struct ui_file *stream, const struct value_print_options *options)
void c_value_print(struct value *val, struct ui_file *stream, const struct value_print_options *options)
static const struct generic_val_print_decorations c_decorations
static void c_value_print_array(struct value *val, struct ui_file *stream, int recurse, const struct value_print_options *options)
static void c_value_print_struct(struct value *val, struct ui_file *stream, int recurse, const struct value_print_options *options)
static void print_unpacked_pointer(struct type *type, struct type *elttype, struct type *unresolved_elttype, const gdb_byte *valaddr, int embedded_offset, CORE_ADDR address, struct ui_file *stream, int recurse, const struct value_print_options *options)
static int textual_name(const char *name)
static void c_value_print_ptr(struct value *val, struct ui_file *stream, int recurse, const struct value_print_options *options)
int c_textual_element_type(struct type *type, char format)
void c_value_print_inner(struct value *val, struct ui_file *stream, int recurse, const struct value_print_options *options)
struct type * value_rtti_type(struct value *v, int *full, LONGEST *top, int *using_enc)
CORE_ADDR extract_typed_address(const gdb_byte *buf, struct type *type)
static ULONGEST extract_unsigned_integer(gdb::array_view< const gdb_byte > buf, enum bfd_endian byte_order)
enum bfd_endian type_byte_order(const struct type *type)
bool get_array_bounds(struct type *type, LONGEST *low_bound, LONGEST *high_bound)
struct type * check_typedef(struct type *type)
#define TYPE_IS_REFERENCE(t)
const struct language_defn * current_language
struct bound_minimal_symbol lookup_minimal_symbol_by_pc(CORE_ADDR pc)
int print_address_demangle(const struct value_print_options *opts, struct gdbarch *gdbarch, CORE_ADDR addr, struct ui_file *stream, int do_demangle)
CORE_ADDR value_address() const
struct minimal_symbol * minsym
LONGEST loc_bitpos() const
struct type * type() const
const char * print_name() const
const char * search_name() const
virtual void printstr(struct ui_file *stream, struct type *elttype, const gdb_byte *string, unsigned int length, const char *encoding, int force_ellipses, const struct value_print_options *options) const
virtual void printchar(int ch, struct type *chtype, struct ui_file *stream) const
struct type * type() const
struct type * target_type() const
struct field & field(int idx) const
bool is_pointer_or_reference() const
const char * name() const
enum val_prettyformat prettyformat
bool bits_any_optimized_out(int bit_offset, int bit_length) const
bool bytes_available(LONGEST offset, ULONGEST length) const
struct type * enclosing_type() const
bool entirely_available()
struct type * type() const
gdb::array_view< const gdb_byte > contents_for_printing()
struct block_symbol lookup_symbol_search_name(const char *search_name, const struct block *block, domain_enum domain)
#define VTBL_FNADDR_OFFSET
void type_print(struct type *type, const char *varstring, struct ui_file *stream, int show)
const char * paddress(struct gdbarch *gdbarch, CORE_ADDR addr)
void print_spaces(int n, struct ui_file *stream)
void gdb_printf(struct ui_file *stream, const char *format,...)
void gdb_puts(const char *linebuffer, struct ui_file *stream)
struct value * value_at(struct type *type, CORE_ADDR addr)
struct type * value_rtti_indirect_type(struct value *v, int *full, LONGEST *top, int *using_enc)
struct value * value_full_object(struct value *argp, struct type *rtype, int xfull, int xtop, int xusing_enc)
struct value * value_addr(struct value *arg1)
struct value * value_cast(struct type *type, struct value *arg2)
struct value * value_ind(struct value *arg1)
struct value * value_ref(struct value *arg1, enum type_code refcode)
void generic_value_print(struct value *val, struct ui_file *stream, int recurse, const struct value_print_options *options, const struct generic_val_print_decorations *decorations)
void value_print_scalar_formatted(struct value *val, const struct value_print_options *options, int size, struct ui_file *stream)
int val_print_string(struct type *elttype, const char *encoding, CORE_ADDR addr, int len, struct ui_file *stream, const struct value_print_options *options)
void value_print_array_elements(struct value *val, struct ui_file *stream, int recurse, const struct value_print_options *options, unsigned int i)
void common_val_print(struct value *value, struct ui_file *stream, int recurse, const struct value_print_options *options, const struct language_defn *language)
void print_function_pointer_address(const struct value_print_options *options, struct gdbarch *gdbarch, CORE_ADDR address, struct ui_file *stream)
static unsigned int get_print_max_chars(const struct value_print_options *options)
CORE_ADDR unpack_pointer(struct type *type, const gdb_byte *valaddr)
CORE_ADDR value_as_address(struct value *val)
struct value * value_from_pointer(struct type *type, CORE_ADDR addr)
LONGEST unpack_long(struct type *type, const gdb_byte *valaddr)