Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: uweigand@de.ibm.com
To: gdb-patches@sourceware.org
Subject: [rfc][37/37] Eliminate builtin_type_ macros: Delete the macros
Date: Sun, 31 Aug 2008 17:53:00 -0000	[thread overview]
Message-ID: <20080831175141.684347000@de.ibm.com> (raw)
In-Reply-To: <20080831175045.128504000@de.ibm.com>

[-- Attachment #1: diff-type-final --]
[-- Type: text/plain, Size: 8684 bytes --]

Hello,

that's it -- after all preceding patches in this series are applied,
no further use of the builtin_type_ macros remains in GDB.

This patch finally deletes those macros.

Also, the builtin_f_type and builtin_m2_type types are now only used
in language-specific code, so this patch moves those to the appropriate
language-specific header files.

Bye,
Ulrich


ChangeLog:

	* gdbtypes.h (builtin_type_void_data_ptr, builtin_type_void_func_ptr,
	builtin_type_CORE_ADDR, 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): Remove macros.

	(builtin_type_f_character, builtin_type_f_integer,
	builtin_type_f_integer_s2, builtin_type_f_logical,
	builtin_type_f_logical_s1, builtin_type_f_logical_s2,
	builtin_type_f_real, builtin_type_f_real_s8, builtin_type_f_real_s16,
	builtin_type_f_complex_s8, builtin_type_f_complex_s16,
	builtin_type_f_complex_s32): Likewise.

	(builtin_type_m2_char, builtin_type_m2_int, builtin_type_m2_card,
	builtin_type_m2_real, builtin_type_m2_bool): Likewise.

	(struct builtin_f_type, builtin_f_type): Move to f-lang.h.
	(struct builtin_m2_type, builtin_m2_type): Move to m2-lang.h.

	* f-lang.h (struct builtin_f_type, builtin_f_type): Move here.
	* m2-lang.h (struct builtin_m2_type, builtin_m2_type): Move here.


Index: gdb-head/gdb/f-lang.h
===================================================================
--- gdb-head.orig/gdb/f-lang.h
+++ gdb-head/gdb/f-lang.h
@@ -104,3 +104,27 @@ extern int f77_get_dynamic_lowerbound (s
 extern void f77_get_dynamic_array_length (struct type *);
 
 extern int calc_f77_array_dims (struct type *);
+
+
+/* Fortran (F77) types */
+
+struct builtin_f_type
+{
+  struct type *builtin_character;
+  struct type *builtin_integer;
+  struct type *builtin_integer_s2;
+  struct type *builtin_logical;
+  struct type *builtin_logical_s1;
+  struct type *builtin_logical_s2;
+  struct type *builtin_real;
+  struct type *builtin_real_s8;
+  struct type *builtin_real_s16;
+  struct type *builtin_complex_s8;
+  struct type *builtin_complex_s16;
+  struct type *builtin_complex_s32;
+  struct type *builtin_void;
+};
+
+/* Return the Fortran type table for the specified architecture.  */
+extern const struct builtin_f_type *builtin_f_type (struct gdbarch *gdbarch);
+
Index: gdb-head/gdb/gdbtypes.h
===================================================================
--- gdb-head.orig/gdb/gdbtypes.h
+++ gdb-head/gdb/gdbtypes.h
@@ -1005,50 +1005,6 @@ struct builtin_type
 /* Return the type table for the specified architecture.  */
 extern const struct builtin_type *builtin_type (struct gdbarch *gdbarch);
 
-/* 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_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
@@ -1108,82 +1064,6 @@ extern struct type *builtin_type_true_un
 extern struct type *builtin_type_error;
 
 
-/* Modula-2 types */
-
-struct builtin_m2_type
-{
-  struct type *builtin_char;
-  struct type *builtin_int;
-  struct type *builtin_card;
-  struct type *builtin_real;
-  struct type *builtin_bool;
-};
-
-/* Return the Modula-2 type table for the specified architecture.  */
-extern const struct builtin_m2_type *builtin_m2_type (struct gdbarch *gdbarch);
-
-/* Compatibility macros to access types for the current architecture.  */
-#define builtin_type_m2_char \
-	(builtin_m2_type (current_gdbarch)->builtin_char)
-#define builtin_type_m2_int \
-	(builtin_m2_type (current_gdbarch)->builtin_int)
-#define builtin_type_m2_card \
-	(builtin_m2_type (current_gdbarch)->builtin_card)
-#define builtin_type_m2_real \
-	(builtin_m2_type (current_gdbarch)->builtin_real)
-#define builtin_type_m2_bool \
-	(builtin_m2_type (current_gdbarch)->builtin_bool)
-
-
-/* Fortran (F77) types */
-
-struct builtin_f_type
-{
-  struct type *builtin_character;
-  struct type *builtin_integer;
-  struct type *builtin_integer_s2;
-  struct type *builtin_logical;
-  struct type *builtin_logical_s1;
-  struct type *builtin_logical_s2;
-  struct type *builtin_real;
-  struct type *builtin_real_s8;
-  struct type *builtin_real_s16;
-  struct type *builtin_complex_s8;
-  struct type *builtin_complex_s16;
-  struct type *builtin_complex_s32;
-  struct type *builtin_void;
-};
-
-/* Return the Fortran type table for the specified architecture.  */
-extern const struct builtin_f_type *builtin_f_type (struct gdbarch *gdbarch);
-
-/* Compatibility macros to access types for the current architecture.  */
-#define builtin_type_f_character \
-	(builtin_f_type (current_gdbarch)->builtin_character)
-#define builtin_type_f_integer \
-	(builtin_f_type (current_gdbarch)->builtin_integer)
-#define builtin_type_f_integer_s2 \
-	(builtin_f_type (current_gdbarch)->builtin_integer_s2)
-#define builtin_type_f_logical \
-	(builtin_f_type (current_gdbarch)->builtin_logical)
-#define builtin_type_f_logical_s1 \
-	(builtin_f_type (current_gdbarch)->builtin_logical_s1)
-#define builtin_type_f_logical_s2 \
-	(builtin_f_type (current_gdbarch)->builtin_logical_s2)
-#define builtin_type_f_real \
-	(builtin_f_type (current_gdbarch)->builtin_real)
-#define builtin_type_f_real_s8 \
-	(builtin_f_type (current_gdbarch)->builtin_real_s8)
-#define builtin_type_f_real_s16 \
-	(builtin_f_type (current_gdbarch)->builtin_real_s16)
-#define builtin_type_f_complex_s8 \
-	(builtin_f_type (current_gdbarch)->builtin_complex_s8)
-#define builtin_type_f_complex_s16 \
-	(builtin_f_type (current_gdbarch)->builtin_complex_s16)
-#define builtin_type_f_complex_s32 \
-	(builtin_f_type (current_gdbarch)->builtin_complex_s32)
-
-
 /* RTTI for C++ */
 /* extern struct type *builtin_type_cxx_typeinfo; */
 
Index: gdb-head/gdb/m2-lang.h
===================================================================
--- gdb-head.orig/gdb/m2-lang.h
+++ gdb-head/gdb/m2-lang.h
@@ -35,3 +35,18 @@ extern int m2_val_print (struct type *, 
 
 extern int get_long_set_bounds (struct type *type, LONGEST *low,
 				LONGEST *high);
+
+/* Modula-2 types */
+
+struct builtin_m2_type
+{
+  struct type *builtin_char;
+  struct type *builtin_int;
+  struct type *builtin_card;
+  struct type *builtin_real;
+  struct type *builtin_bool;
+};
+
+/* Return the Modula-2 type table for the specified architecture.  */
+extern const struct builtin_m2_type *builtin_m2_type (struct gdbarch *gdbarch);
+

-- 
  Dr. Ulrich Weigand
  GNU Toolchain for Linux on System z and Cell BE
  Ulrich.Weigand@de.ibm.com


  parent reply	other threads:[~2008-08-31 17:53 UTC|newest]

Thread overview: 98+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-08-31 17:53 [rfc][00/37] Eliminate builtin_type_ macros uweigand
2008-08-31 17:52 ` [rfc][19/37] Eliminate builtin_type_ macros: Ada range type handling uweigand
2008-09-06  0:24   ` Joel Brobecker
2008-09-07 15:43     ` Ulrich Weigand
2008-09-09 18:00       ` Joel Brobecker
2008-09-09 20:21         ` Ulrich Weigand
2008-09-09 22:08           ` Joel Brobecker
2008-09-09 22:32             ` Ulrich Weigand
2008-09-10  6:09               ` Joel Brobecker
2008-09-10  9:51                 ` Ulrich Weigand
2008-08-31 17:52 ` [rfc][26/37] Eliminate builtin_type_ macros: Use per-frame architecture uweigand
2008-08-31 17:52 ` [rfc][05/37] Eliminate builtin_type_ macros: Replace LA_BOOL_TYPE macro uweigand
2008-09-05 18:08   ` Joel Brobecker
2008-08-31 17:52 ` [rfc][29/37] Eliminate builtin_type_ macros: Update valarith.c routines uweigand
2008-08-31 17:52 ` [rfc][09/37] Eliminate builtin_type_ macros: Make argument promotion explicit uweigand
2008-08-31 17:52 ` [rfc][23/37] Eliminate builtin_type_ macros: Platform-neutral types for internal variables uweigand
2008-09-02 12:43   ` Daniel Jacobowitz
2008-09-02 21:55     ` Ulrich Weigand
2008-09-02 22:00       ` Daniel Jacobowitz
2008-09-02 23:53       ` Ulrich Weigand
2008-08-31 17:52 ` [rfc][21/37] Eliminate builtin_type_ macros: Platform-neutral builtin_type_void uweigand
2008-09-06  0:38   ` Joel Brobecker
2008-09-06  4:12     ` Daniel Jacobowitz
2008-09-06 14:00       ` Joel Brobecker
2008-09-07 15:59       ` Ulrich Weigand
2008-09-13 15:23         ` Daniel Jacobowitz
2008-09-13 17:23         ` Joel Brobecker
2008-08-31 17:52 ` [rfc][13/37] Eliminate builtin_type_ macros: Update EVAL_SKIP dummy return type uweigand
2008-09-05 22:56   ` Joel Brobecker
2008-09-07 15:40     ` Ulrich Weigand
2008-09-07 15:49       ` Joel Brobecker
2008-08-31 17:52 ` [rfc][15/37] Eliminate builtin_type_ macros: Dereferencing of integer types uweigand
2008-09-01  7:19   ` Tom Tromey
2008-09-02 23:34     ` Ulrich Weigand
2008-09-05 23:02   ` Joel Brobecker
2008-08-31 17:52 ` [rfc][07/37] Eliminate builtin_type_ macros: Use expression arch for size_t type uweigand
2008-09-05 18:18   ` Joel Brobecker
2008-09-05 20:16     ` Ulrich Weigand
2008-08-31 17:52 ` [rfc][02/37] Eliminate builtin_type_ macros: Introduce expression architecture uweigand
2008-08-31 17:52 ` [rfc][33/37] Eliminate builtin_type_ macros: Default target word size uweigand
2008-08-31 17:52 ` [rfc][11/37] Eliminate builtin_type_ macros: Update ax-gdb expression evaluator uweigand
2008-08-31 17:52 ` [rfc][01/37] Eliminate builtin_type_ macros: Unused write_exp_msymbol parameters uweigand
2008-08-31 17:52 ` [rfc][24/37] Eliminate builtin_type_ macros: Platform-neutral generic integers uweigand
2008-09-06  3:15   ` Joel Brobecker
2008-09-07 16:44     ` Ulrich Weigand
2008-08-31 17:52 ` [rfc][16/37] Eliminate builtin_type_ macros: Ada fixed/double conversions uweigand
2008-09-05 23:13   ` Joel Brobecker
2008-08-31 17:52 ` [rfc][32/37] Eliminate builtin_type_ macros: Update value-printing code uweigand
2008-08-31 17:52 ` [rfc][30/37] Eliminate builtin_type_ macros: Remove gdbarch_name_of_malloc uweigand
2008-08-31 17:53 ` [rfc][35/37] Eliminate builtin_type_ macros: Use target arch in bsd-uthread.c uweigand
2008-08-31 17:53 ` [rfc][20/37] Eliminate builtin_type_ macros: Objective-C expression evaluation uweigand
2008-08-31 17:53 ` [rfc][08/37] Eliminate builtin_type_ macros: Make pointer arithmetic explicit uweigand
2008-09-02 12:38   ` Daniel Jacobowitz
2008-09-02 21:48     ` Ulrich Weigand
2008-09-02 21:52       ` Daniel Jacobowitz
2008-09-04 22:32       ` Tom Tromey
2008-09-05 18:21         ` Joel Brobecker
2008-08-31 17:53 ` [rfc][04/37] Eliminate builtin_type_ macros: Introduce java_language_arch_info uweigand
2008-08-31 17:53 ` [rfc][36/37] Eliminate builtin_type_ macros: Use target arch in solib code uweigand
2008-08-31 17:53 ` [rfc][17/37] Eliminate builtin_type_ macros: Ada pos_atr result type uweigand
2008-08-31 17:53 ` [rfc][12/37] Eliminate builtin_type_ macros: Remove redundant coerce_enum/coerce_number uweigand
2008-08-31 17:53 ` [rfc][22/37] Eliminate builtin_type_ macros: Platform-neutral "true char" types uweigand
2008-08-31 17:53 ` [rfc][18/37] Eliminate builtin_type_ macros: Ada System.Address special handling uweigand
2008-08-31 17:53 ` [rfc][14/37] Eliminate builtin_type_ macros: Implicit dereferencing of references uweigand
2008-08-31 17:53 ` [rfc][03/37] Eliminate builtin_type_ macros: Extract bitstring subscript handling uweigand
2008-09-05 18:16   ` Joel Brobecker
2008-09-05 20:17     ` Ulrich Weigand
2008-08-31 17:53 ` [rfc][27/37] Eliminate builtin_type_ macros: Update C++ ABI handling uweigand
2008-09-05 20:18   ` Ulrich Weigand
2008-08-31 17:53 ` [rfc][10/37] Eliminate builtin_type_ macros: Use expression arch for argument promotion uweigand
2008-09-05 22:39   ` Joel Brobecker
2008-08-31 17:53 ` uweigand [this message]
2008-08-31 17:53 ` [rfc][06/37] Eliminate builtin_type_ macros: Make OP_COMPLEX type explicit uweigand
2008-08-31 18:12 ` [rfc][34/37] Eliminate builtin_type_ macros: Use target arch in procfs.c uweigand
2008-08-31 18:13 ` [rfc][31/37] Eliminate builtin_type_ macros: Inferior call argument types uweigand
2008-09-06  1:37   ` Joel Brobecker
2008-08-31 18:15 ` [rfc][28/37] Eliminate builtin_type_ macros: Update infcall.c routines uweigand
2008-09-02 12:48   ` Daniel Jacobowitz
2008-09-02 21:56     ` Ulrich Weigand
2008-08-31 18:16 ` [rfc][25/37] Eliminate builtin_type_ macros: Update *-tdep.c files uweigand
2008-08-31 22:20 ` [rfc][00/37] Eliminate builtin_type_ macros Mark Kettenis
2008-09-01  3:46   ` David Miller
2008-09-01 18:57   ` Ulrich Weigand
2008-09-02 10:22     ` Mark Kettenis
2008-09-02 12:30       ` Daniel Jacobowitz
2008-09-02 21:37       ` Ulrich Weigand
2008-09-02 12:50 ` Daniel Jacobowitz
2008-09-02 22:02   ` Ulrich Weigand
2008-09-02 22:12     ` Daniel Jacobowitz
2008-09-06  3:16 ` Joel Brobecker
2008-09-07 16:43   ` Ulrich Weigand
2008-09-09 18:05     ` Joel Brobecker
2008-09-09 20:21       ` Ulrich Weigand
2008-09-09 21:18       ` Joel Brobecker
2008-09-09 22:12         ` Ulrich Weigand
2008-09-10  6:18           ` Joel Brobecker
2008-09-10  9:43             ` Ulrich Weigand
2008-09-10 16:25               ` Joel Brobecker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080831175141.684347000@de.ibm.com \
    --to=uweigand@de.ibm.com \
    --cc=gdb-patches@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox