aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog21
-rw-r--r--gdb/c-lang.c38
-rw-r--r--gdb/c-lang.h4
-rw-r--r--gdb/config/i386/i386sco4.mh2
-rw-r--r--gdb/jv-lang.c6
-rw-r--r--gdb/scm-lang.c8
6 files changed, 39 insertions, 40 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index f5d626d..4a1fcdb 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,26 @@
2004-07-28 Andrew Cagney <cagney@gnu.org>
+ * scm-lang.c (c_builtin_types): Delete extern declaration.
+ (scm_language_defn): Replace
+ string_char_type and primitive_type_vector with
+ la_language_arch_info.
+ * jv-lang.c (java_language_defn): Replace
+ string_char_type and primitive_type_vector with
+ la_language_arch_info.
+ * config/i386/i386sco4.mh (NATDEPFILES): Remove reference to
+ c_builtin_types in comment.
+ * c-lang.h (struct language_arch_info): Declare opaque.
+ (c_language_arch_info): Declare.
+ (c_builtin_types): Delete declaration.
+ * c-lang.c (c_language_arch_info): Set string_char_type to
+ builtin_char, not builtin_true_char. Make global.
+ (c_builtin_types): Delete array.
+ (asm_language_defn, minimal_language_defn): Replace
+ string_char_type and primitive_type_vector with
+ la_language_arch_info.
+
+2004-07-28 Andrew Cagney <cagney@gnu.org>
+
* gdbtypes.h (struct builtin_type): Rename true_char to
builtin_true_char.
* gdbtypes.c (gdbtypes_post_init): Update.
diff --git a/gdb/c-lang.c b/gdb/c-lang.c
index 0ced3ba..5ab15b8 100644
--- a/gdb/c-lang.c
+++ b/gdb/c-lang.c
@@ -513,28 +513,6 @@ const struct op_print c_op_print_tab[] =
{NULL, 0, 0, 0}
};
-struct type **const (c_builtin_types[]) =
-{
- &builtin_type_int,
- &builtin_type_long,
- &builtin_type_short,
- &builtin_type_char,
- &builtin_type_float,
- &builtin_type_double,
- &builtin_type_void,
- &builtin_type_long_long,
- &builtin_type_signed_char,
- &builtin_type_unsigned_char,
- &builtin_type_unsigned_short,
- &builtin_type_unsigned_int,
- &builtin_type_unsigned_long,
- &builtin_type_unsigned_long_long,
- &builtin_type_long_double,
- &builtin_type_complex,
- &builtin_type_double_complex,
- 0
-};
-
enum c_primitive_types {
c_primitive_type_int,
c_primitive_type_long,
@@ -556,12 +534,12 @@ enum c_primitive_types {
nr_c_primitive_types
};
-static void
+void
c_language_arch_info (struct gdbarch *gdbarch,
struct language_arch_info *lai)
{
const struct builtin_type *builtin = builtin_type (gdbarch);
- lai->string_char_type = builtin->builtin_true_char;
+ lai->string_char_type = builtin->builtin_char;
lai->primitive_type_vector
= GDBARCH_OBSTACK_CALLOC (gdbarch, nr_c_primitive_types + 1,
struct type *);
@@ -687,7 +665,7 @@ const struct language_defn asm_language_defn =
{
"asm", /* Language name */
language_asm,
- c_builtin_types,
+ NULL,
range_check_off,
type_check_off,
case_sensitive_on,
@@ -715,9 +693,9 @@ const struct language_defn asm_language_defn =
c_op_print_tab, /* expression operators for printing */
1, /* c-style arrays */
0, /* String lower bound */
- &builtin_type_char, /* Type of string elements */
+ NULL,
default_word_break_characters,
- NULL, /* FIXME: la_language_arch_info. */
+ c_language_arch_info, /* FIXME: la_language_arch_info. */
LANG_MAGIC
};
@@ -730,7 +708,7 @@ const struct language_defn minimal_language_defn =
{
"minimal", /* Language name */
language_minimal,
- c_builtin_types,
+ NULL,
range_check_off,
type_check_off,
case_sensitive_on,
@@ -758,9 +736,9 @@ const struct language_defn minimal_language_defn =
c_op_print_tab, /* expression operators for printing */
1, /* c-style arrays */
0, /* String lower bound */
- &builtin_type_char, /* Type of string elements */
+ NULL,
default_word_break_characters,
- NULL, /* FIXME: la_language_arch_info. */
+ c_language_arch_info,
LANG_MAGIC
};
diff --git a/gdb/c-lang.h b/gdb/c-lang.h
index dd8f231..bce7749 100644
--- a/gdb/c-lang.h
+++ b/gdb/c-lang.h
@@ -24,6 +24,7 @@
#define C_LANG_H 1
struct ui_file;
+struct language_arch_info;
#include "value.h"
#include "macroexp.h"
@@ -61,7 +62,8 @@ extern void *expression_macro_lookup_baton;
extern struct type *c_create_fundamental_type (struct objfile *, int);
-extern struct type **const (c_builtin_types[]);
+extern void c_language_arch_info (struct gdbarch *gdbarch,
+ struct language_arch_info *lai);
/* These are in c-typeprint.c: */
diff --git a/gdb/config/i386/i386sco4.mh b/gdb/config/i386/i386sco4.mh
index 2507e07..0c2a8d2 100644
--- a/gdb/config/i386/i386sco4.mh
+++ b/gdb/config/i386/i386sco4.mh
@@ -7,5 +7,5 @@ NAT_FILE= nm-i386sco4.h
NATDEPFILES= infptrace.o inftarg.o fork-child.o corelow.o core-aout.o i386v-nat.o
# The cc compiler mishandles const in cases like
-# struct type ** const (c_builtin_types[]) =
+# struct type ** const (array[]) =
MH_CFLAGS=-Dconst=
diff --git a/gdb/jv-lang.c b/gdb/jv-lang.c
index 3f68ec4..30a75c0 100644
--- a/gdb/jv-lang.c
+++ b/gdb/jv-lang.c
@@ -1084,7 +1084,7 @@ const struct language_defn java_language_defn =
{
"java", /* Language name */
language_java,
- c_builtin_types,
+ NULL,
range_check_off,
type_check_off,
case_sensitive_on,
@@ -1112,9 +1112,9 @@ const struct language_defn java_language_defn =
java_op_print_tab, /* expression operators for printing */
0, /* not c-style arrays */
0, /* String lower bound */
- &builtin_type_char, /* Type of string elements */
+ NULL,
default_word_break_characters,
- NULL, /* FIXME: la_language_arch_info. */
+ c_language_arch_info,
LANG_MAGIC
};
diff --git a/gdb/scm-lang.c b/gdb/scm-lang.c
index 809f703..4b1db15 100644
--- a/gdb/scm-lang.c
+++ b/gdb/scm-lang.c
@@ -44,8 +44,6 @@ static void scm_printstr (struct ui_file * stream, char *string,
unsigned int length, int width,
int force_ellipses);
-extern struct type **const (c_builtin_types[]);
-
struct type *builtin_type_scm;
void
@@ -246,7 +244,7 @@ const struct language_defn scm_language_defn =
{
"scheme", /* Language name */
language_scm,
- c_builtin_types,
+ NULL,
range_check_off,
type_check_off,
case_sensitive_off,
@@ -274,9 +272,9 @@ const struct language_defn scm_language_defn =
NULL, /* expression operators for printing */
1, /* c-style arrays */
0, /* String lower bound */
- &builtin_type_char, /* Type of string elements */
+ NULL,
default_word_break_characters,
- NULL, /* FIXME: la_language_arch_info. */
+ c_language_arch_info,
LANG_MAGIC
};