GDB (xrefs)
|
#include "defs.h"
#include "gdbsupport/gdb_obstack.h"
#include "bfd.h"
#include "symtab.h"
#include "gdbtypes.h"
#include "expression.h"
#include "value.h"
#include "gdbcore.h"
#include "command.h"
#include "gdbcmd.h"
#include "target.h"
#include "language.h"
#include "cp-abi.h"
#include "typeprint.h"
#include "valprint.h"
#include <ctype.h>
#include "cli/cli-utils.h"
#include "extension.h"
#include "completer.h"
#include "cli/cli-style.h"
Go to the source code of this file.
Functions | |
static hashval_t | hash_typedef_field (const void *p) |
static int | eq_typedef_field (const void *a, const void *b) |
static int | copy_typedef_hash_element (void **slot, void *nt) |
void | typedef_print (struct type *type, struct symbol *newobj, struct ui_file *stream) |
void | type_print (struct type *type, const char *varstring, struct ui_file *stream, int show) |
std::string | type_to_string (struct type *type) |
void | type_print_unknown_return_type (struct ui_file *stream) |
void | error_unknown_type (const char *sym_print_name) |
static void | whatis_exp (const char *exp, int show) |
static void | whatis_command (const char *exp, int from_tty) |
static void | ptype_command (const char *type_name, int from_tty) |
void | print_type_scalar (struct type *type, LONGEST val, struct ui_file *stream) |
void | print_type_fixed_point (struct type *type, struct ui_file *stream) |
void | maintenance_print_type (const char *type_name, int from_tty) |
static void | set_print_type_methods (const char *args, int from_tty, struct cmd_list_element *c) |
static void | show_print_type_methods (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value) |
static void | set_print_type_typedefs (const char *args, int from_tty, struct cmd_list_element *c) |
static void | show_print_type_typedefs (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value) |
static void | set_print_type_nested_types (const char *args, int from_tty, struct cmd_list_element *c) |
static void | show_print_type_nested_types (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value) |
static void | set_print_offsets_and_sizes_in_hex (const char *args, int from_tty, struct cmd_list_element *c) |
static void | show_print_offsets_and_sizes_in_hex (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value) |
void | _initialize_typeprint () |
void | val_print_not_allocated (struct ui_file *stream) |
void | val_print_not_associated (struct ui_file *stream) |
Variables | |
const struct type_print_options | type_print_raw_options |
static struct type_print_options | default_ptype_flags |
struct cmd_list_element * | setprinttypelist |
struct cmd_list_element * | showprinttypelist |
static bool | print_methods = true |
static bool | print_typedefs = true |
static int | print_nested_type_limit = 0 |
static bool | print_offsets_and_sizes_in_hex = false |
void _initialize_typeprint | ( | ) |
Definition at line 824 of file typeprint.c.
Referenced by initialize_all_files().
|
static |
Definition at line 281 of file typeprint.c.
Referenced by typedef_hash_table::typedef_hash_table().
|
static |
Definition at line 211 of file typeprint.c.
References decl_field::type, and types_equal().
Referenced by typedef_hash_table::typedef_hash_table().
void error_unknown_type | ( | const char * | sym_print_name | ) |
Definition at line 427 of file typeprint.c.
Referenced by expr::var_value_operation::do_generate_ax(), expr::var_msym_value_operation::do_generate_ax(), eval_op_var_msym_value(), expr::var_value_operation::evaluate(), expr::adl_func_operation::evaluate(), expr::var_msym_value_operation::evaluate_for_sizeof(), and expr::var_value_operation::evaluate_funcall().
|
static |
Definition at line 201 of file typeprint.c.
References decl_field::type, and TYPE_SAFE_NAME.
Referenced by typedef_hash_table::typedef_hash_table().
void maintenance_print_type | ( | const char * | type_name, |
int | from_tty ) |
Definition at line 706 of file typeprint.c.
References parse_expression(), recursive_dump_type(), and value::type().
Definition at line 693 of file typeprint.c.
References type::fixed_point_scaling_factor(), gdb_printf(), type::length(), and gdb_mpq::str().
Referenced by ada_print_type(), c_type_print_base_1(), and print_type_scalar().
Definition at line 616 of file typeprint.c.
References check_typedef(), type::code(), current_language, type::field(), gdb_printf(), gdb_puts(), type::is_unsigned(), field::loc_enumval(), field::name(), type::num_fields(), print_longest(), print_type_fixed_point(), print_type_scalar(), language_defn::printchar(), type::target_type(), type, and TYPE_CODE_UNDEF.
Referenced by m2_print_bounds(), m2_print_long_set(), m2_range(), print_type_scalar(), pascal_language::type_print_base(), m2_language::value_print_inner(), and pascal_language::value_print_inner().
|
static |
Definition at line 598 of file typeprint.c.
References whatis_exp().
|
static |
Definition at line 803 of file typeprint.c.
References default_ptype_flags, type_print_options::print_in_hex, and print_offsets_and_sizes_in_hex.
|
static |
Definition at line 727 of file typeprint.c.
References default_ptype_flags, print_methods, and type_print_options::print_methods.
|
static |
Definition at line 768 of file typeprint.c.
References default_ptype_flags, print_nested_type_limit, and type_print_options::print_nested_type_limit.
|
static |
Definition at line 744 of file typeprint.c.
References default_ptype_flags, print_typedefs, and type_print_options::print_typedefs.
|
static |
Definition at line 813 of file typeprint.c.
References gdb_printf().
|
static |
Definition at line 734 of file typeprint.c.
References gdb_printf().
|
static |
Definition at line 777 of file typeprint.c.
References gdb_printf().
|
static |
Definition at line 751 of file typeprint.c.
References gdb_printf().
Definition at line 388 of file typeprint.c.
References current_language, default_ptype_flags, and language_defn::print_type().
Referenced by ada_value_print(), ada_value_print_num(), c_print_typedef(), c_value_print(), disassemble_dwarf_expression(), expr::dump_for_expression(), generic_val_print_func(), list_arg_or_local(), output_debug_symbol(), m2_language::print_typedef(), pascal_language::print_typedef(), rust_language::print_typedef(), print_variable_or_computed(), py_print_type(), rust_internal_print_type(), rust_val_print_slice(), symbol_to_info_string(), type_as_string(), pascal_language::type_print_base(), type_to_string(), pascal_language::value_print(), rust_language::value_print(), and whatis_exp().
void type_print_unknown_return_type | ( | struct ui_file * | stream | ) |
Definition at line 418 of file typeprint.c.
References fprintf_styled(), metadata_style, and cli_style_option::style().
Referenced by c_type_print_base_1(), f_language::f_type_print_base(), m2_procedure(), and pascal_language::type_print_func_varspec_suffix().
std::string type_to_string | ( | struct type * | type | ) |
Definition at line 399 of file typeprint.c.
References string_file::release(), and type_print().
Referenced by c_get_string(), gnuv3_get_typeid(), lookup_struct_elt(), rust_parser::parse_path(), rust_parser::parse_tuple_type(), print_return_value_1(), treg_matches_sym_type_name(), update_type_if_necessary(), expr::fortran_undetermined::value_subarray(), varobj_get_type(), language_defn::watch_location_expression(), ada_language::watch_location_expression(), and rust_language::watch_location_expression().
Definition at line 375 of file typeprint.c.
References current_language, and language_defn::print_typedef().
Referenced by symbol_to_info_string().
void val_print_not_allocated | ( | struct ui_file * | stream | ) |
Definition at line 898 of file typeprint.c.
References fprintf_styled(), metadata_style, and cli_style_option::style().
Referenced by valprint_check_validity(), and value_check_printable().
void val_print_not_associated | ( | struct ui_file * | stream | ) |
Definition at line 906 of file typeprint.c.
References fprintf_styled(), metadata_style, and cli_style_option::style().
Referenced by valprint_check_validity(), and value_check_printable().
|
static |
Definition at line 587 of file typeprint.c.
References whatis_exp().
|
static |
Definition at line 437 of file typeprint.c.
References access_value_history(), language_defn::can_print_type_offsets(), check_typedef(), type::code(), current_language, default_ptype_flags, flags, gdb_printf(), gdb_stdout, get_user_print_options(), is_dynamic_type(), type::is_pointer_or_reference(), parse_expression(), language_defn::print_type(), type_print_options::raw, type::target_type(), type, value::type(), type_print(), value_rtti_indirect_type(), and value_rtti_type().
Referenced by ptype_command(), and whatis_command().
|
static |
Definition at line 56 of file typeprint.c.
Referenced by set_print_offsets_and_sizes_in_hex(), set_print_type_methods(), set_print_type_nested_types(), set_print_type_typedefs(), type_print(), and whatis_exp().
|
static |
Definition at line 724 of file typeprint.c.
Referenced by set_print_type_methods().
|
static |
Definition at line 762 of file typeprint.c.
Referenced by set_print_type_nested_types().
|
static |
Definition at line 797 of file typeprint.c.
Referenced by set_print_offsets_and_sizes_in_hex().
|
static |
Definition at line 741 of file typeprint.c.
Referenced by set_print_type_typedefs().
struct cmd_list_element* setprinttypelist |
Definition at line 720 of file typeprint.c.
struct cmd_list_element* showprinttypelist |
Definition at line 722 of file typeprint.c.
const struct type_print_options type_print_raw_options |
Definition at line 41 of file typeprint.c.
Referenced by ada_print_typedef(), cp_print_class_member(), dwarf2_compute_name(), gnuv3_print_method_ptr(), incomplete_type_hint(), inspect_type(), print_symbol(), f_language::print_typedef(), typy_repr(), typy_str(), tyscm_type_name(), user_select_syms(), and yyparse().