diff options
author | Ulrich Weigand <uweigand@de.ibm.com> | 2007-06-22 12:32:19 +0000 |
---|---|---|
committer | Ulrich Weigand <uweigand@de.ibm.com> | 2007-06-22 12:32:19 +0000 |
commit | 5674de600f8bea2ae04159ad20bb50e9d3d3a5f2 (patch) | |
tree | a6d3e1816bb2028b0f23288e5bc60cdfd41e39d2 /gdb/gdbtypes.h | |
parent | 64c50499d5446901112a8a7c169fc6cb751f8fe2 (diff) | |
download | fsf-binutils-gdb-5674de600f8bea2ae04159ad20bb50e9d3d3a5f2.zip fsf-binutils-gdb-5674de600f8bea2ae04159ad20bb50e9d3d3a5f2.tar.gz fsf-binutils-gdb-5674de600f8bea2ae04159ad20bb50e9d3d3a5f2.tar.bz2 |
* gdbtypes.h (builtin_type_true_char, builtin_type_void,
builtin_type_char, builtin_type_short, builtin_type_int,
builtin_type_long, builtin_type_signed_char,
builtin_type_unsigned_char, builtin_type_unsigned_short,
builtin_type_unsigned_int, builtin_type_unsigned_long,
builtin_type_float, builtin_type_double, builtin_type_long_double,
builtin_type_complex, builtin_type_double_complex, builtin_type_string,
builtin_type_bool, builtin_type_long_long,
builtin_type_unsigned_long_long, builtin_type_void_data_ptr,
builtin_type_void_func_ptr, builtin_type_CORE_ADDR): Replace global
variable declaration with compatibility macro.
* gdbtypes.c (builtin_type_true_char, builtin_type_void,
builtin_type_char, builtin_type_short, builtin_type_int,
builtin_type_long, builtin_type_signed_char,
builtin_type_unsigned_char, builtin_type_unsigned_short,
builtin_type_unsigned_int, builtin_type_unsigned_long,
builtin_type_float, builtin_type_double, builtin_type_long_double,
builtin_type_complex, builtin_type_double_complex, builtin_type_string,
builtin_type_bool, builtin_type_long_long,
builtin_type_unsigned_long_long, builtin_type_void_data_ptr,
builtin_type_void_func_ptr, builtin_type_CORE_ADDR): Remove.
(build_gdbtypes): Remove.
(_initialize_gdbtypes): Do not call build_gdbtypes, move installing
opaque-type-resolution command here. Do not call
deprecated_register_gdbarch_swap.
Diffstat (limited to 'gdb/gdbtypes.h')
-rw-r--r-- | gdb/gdbtypes.h | 93 |
1 files changed, 49 insertions, 44 deletions
diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h index c565be6..8d60894 100644 --- a/gdb/gdbtypes.h +++ b/gdb/gdbtypes.h @@ -1041,43 +1041,55 @@ struct builtin_type /* Return the type table for the specified architecture. */ extern const struct builtin_type *builtin_type (struct gdbarch *gdbarch); -/* Implicit sizes */ -extern struct type *builtin_type_void; -extern struct type *builtin_type_char; -extern struct type *builtin_type_short; -extern struct type *builtin_type_int; -extern struct type *builtin_type_long; -extern struct type *builtin_type_signed_char; -extern struct type *builtin_type_unsigned_char; -extern struct type *builtin_type_unsigned_short; -extern struct type *builtin_type_unsigned_int; -extern struct type *builtin_type_unsigned_long; -extern struct type *builtin_type_float; -extern struct type *builtin_type_double; -extern struct type *builtin_type_long_double; -extern struct type *builtin_type_complex; -extern struct type *builtin_type_double_complex; -extern struct type *builtin_type_string; -extern struct type *builtin_type_bool; - -/* Address/pointer types: */ -/* (C) Language `pointer to data' type. Some target platforms use an - implicitly {sign,zero} -extended 32 bit C language pointer on a 64 - bit ISA. */ -extern struct type *builtin_type_void_data_ptr; - -/* (C) Language `pointer to function returning void' type. Since - ANSI, C standards have explicitly said that pointers to functions - and pointers to data are not interconvertible --- that is, you - can't cast a function pointer to void * and back, and expect to get - the same value. However, all function pointer types are - interconvertible, so void (*) () can server as a generic function - pointer. */ -extern struct type *builtin_type_void_func_ptr; - -/* The target CPU's address type. This is the ISA address size. */ -extern struct type *builtin_type_CORE_ADDR; - +/* Compatibility macros to access types for the current architecture. */ +#define builtin_type_void_data_ptr \ + (builtin_type (current_gdbarch)->builtin_data_ptr) +#define builtin_type_void_func_ptr \ + (builtin_type (current_gdbarch)->builtin_func_ptr) +#define builtin_type_CORE_ADDR \ + (builtin_type (current_gdbarch)->builtin_core_addr) +#define builtin_type_true_char \ + (builtin_type (current_gdbarch)->builtin_true_char) +#define builtin_type_void \ + (builtin_type (current_gdbarch)->builtin_void) +#define builtin_type_char \ + (builtin_type (current_gdbarch)->builtin_char) +#define builtin_type_short \ + (builtin_type (current_gdbarch)->builtin_short) +#define builtin_type_int \ + (builtin_type (current_gdbarch)->builtin_int) +#define builtin_type_long \ + (builtin_type (current_gdbarch)->builtin_long) +#define builtin_type_signed_char \ + (builtin_type (current_gdbarch)->builtin_signed_char) +#define builtin_type_unsigned_char \ + (builtin_type (current_gdbarch)->builtin_unsigned_char) +#define builtin_type_unsigned_short \ + (builtin_type (current_gdbarch)->builtin_unsigned_short) +#define builtin_type_unsigned_int \ + (builtin_type (current_gdbarch)->builtin_unsigned_int) +#define builtin_type_unsigned_long \ + (builtin_type (current_gdbarch)->builtin_unsigned_long) +#define builtin_type_float \ + (builtin_type (current_gdbarch)->builtin_float) +#define builtin_type_double \ + (builtin_type (current_gdbarch)->builtin_double) +#define builtin_type_long_double \ + (builtin_type (current_gdbarch)->builtin_long_double) +#define builtin_type_complex \ + (builtin_type (current_gdbarch)->builtin_complex) +#define builtin_type_double_complex \ + (builtin_type (current_gdbarch)->builtin_double_complex) +#define builtin_type_string \ + (builtin_type (current_gdbarch)->builtin_string) +#define builtin_type_bool \ + (builtin_type (current_gdbarch)->builtin_bool) +#define builtin_type_long_long \ + (builtin_type (current_gdbarch)->builtin_long_long) +#define builtin_type_unsigned_long_long \ + (builtin_type (current_gdbarch)->builtin_unsigned_long_long) + + /* Explicit sizes - see C9X <intypes.h> for naming scheme. The "int0" is for when an architecture needs to describe a register that has no size. */ @@ -1113,18 +1125,11 @@ extern struct type *builtin_type_arm_ext; extern struct type *builtin_type_ia64_spill; extern struct type *builtin_type_ia64_quad; -/* We use this for the '/c' print format, because builtin_type_char is - just a one-byte integral type, which languages less laid back than - C will print as ... well, a one-byte integral type. */ -extern struct type *builtin_type_true_char; - /* This type represents a type that was unrecognized in symbol read-in. */ extern struct type *builtin_type_error; -extern struct type *builtin_type_long_long; -extern struct type *builtin_type_unsigned_long_long; /* Modula-2 types */ |