and string_char_type members.
* language.c (language_string_char_type): No longer consult
la->string_char_type.
(language_lookup_primitive_type_by_name): No longer consult
current_language->la_builtin_type_vector.
* language.c (unknown_language_defn, auto_language_defn,
local_language_defn): Adapt initializer.
* ada-lang.c (ada_language_defn): Likewise.
* c-lang.c (c_language_defn, cplus_language_defn, asm_language_defn,
minimal_language_defn): Likewise.
* f-lang.c (f_language_defn): Likewise.
* jv-lang.c (java_language_defn): Likewise.
* m2-lang.c (m2_language_defn): Likewise.
* objc-lang.c (objc_language_defn): Likewise.
* p-lang.c (pascal_language_defn): Likewise.
* scm-lang.c (scm_language_defn): Likewise.
+2007-11-02 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * language.h (struct language_defn): Remove la_builtin_type_vector
+ and string_char_type members.
+ * language.c (language_string_char_type): No longer consult
+ la->string_char_type.
+ (language_lookup_primitive_type_by_name): No longer consult
+ current_language->la_builtin_type_vector.
+
+ * language.c (unknown_language_defn, auto_language_defn,
+ local_language_defn): Adapt initializer.
+ * ada-lang.c (ada_language_defn): Likewise.
+ * c-lang.c (c_language_defn, cplus_language_defn, asm_language_defn,
+ minimal_language_defn): Likewise.
+ * f-lang.c (f_language_defn): Likewise.
+ * jv-lang.c (java_language_defn): Likewise.
+ * m2-lang.c (m2_language_defn): Likewise.
+ * objc-lang.c (objc_language_defn): Likewise.
+ * p-lang.c (pascal_language_defn): Likewise.
+ * scm-lang.c (scm_language_defn): Likewise.
+
2007-11-02 Markus Deuling <deuling@de.ibm.com>
* frame.c (frame_id_inner): Add gdbarch parameter. Replace
const struct language_defn ada_language_defn = {
"ada", /* Language name */
language_ada,
- NULL,
range_check_off,
type_check_off,
case_sensitive_on, /* Yes, Ada is case-insensitive, but
ada_op_print_tab, /* expression operators for printing */
0, /* c-style arrays */
1, /* String lower bound */
- NULL,
ada_get_gdb_completer_word_break_characters,
ada_language_arch_info,
ada_print_array_index,
{
"c", /* Language name */
language_c,
- NULL,
range_check_off,
type_check_off,
case_sensitive_on,
c_op_print_tab, /* expression operators for printing */
1, /* c-style arrays */
0, /* String lower bound */
- NULL,
default_word_break_characters,
c_language_arch_info,
default_print_array_index,
{
"c++", /* Language name */
language_cplus,
- NULL,
range_check_off,
type_check_off,
case_sensitive_on,
c_op_print_tab, /* expression operators for printing */
1, /* c-style arrays */
0, /* String lower bound */
- NULL,
default_word_break_characters,
cplus_language_arch_info,
default_print_array_index,
{
"asm", /* Language name */
language_asm,
- NULL,
range_check_off,
type_check_off,
case_sensitive_on,
c_op_print_tab, /* expression operators for printing */
1, /* c-style arrays */
0, /* String lower bound */
- NULL,
default_word_break_characters,
c_language_arch_info, /* FIXME: la_language_arch_info. */
default_print_array_index,
{
"minimal", /* Language name */
language_minimal,
- NULL,
range_check_off,
type_check_off,
case_sensitive_on,
c_op_print_tab, /* expression operators for printing */
1, /* c-style arrays */
0, /* String lower bound */
- NULL,
default_word_break_characters,
c_language_arch_info,
default_print_array_index,
{
"fortran",
language_fortran,
- NULL,
range_check_on,
type_check_on,
case_sensitive_off,
f_op_print_tab, /* expression operators for printing */
0, /* arrays are first-class (not c-style) */
1, /* String lower bound */
- NULL,
default_word_break_characters,
f_language_arch_info,
default_print_array_index,
{
"java", /* Language name */
language_java,
- NULL,
range_check_off,
type_check_off,
case_sensitive_on,
java_op_print_tab, /* expression operators for printing */
0, /* not c-style arrays */
0, /* String lower bound */
- NULL,
default_word_break_characters,
c_language_arch_info,
default_print_array_index,
{
"unknown",
language_unknown,
- NULL,
range_check_off,
type_check_off,
array_row_major,
unk_op_print_tab, /* expression operators for printing */
1, /* c-style arrays */
0, /* String lower bound */
- NULL,
default_word_break_characters,
unknown_language_arch_info, /* la_language_arch_info. */
default_print_array_index,
{
"auto",
language_auto,
- NULL,
range_check_off,
type_check_off,
array_row_major,
unk_op_print_tab, /* expression operators for printing */
1, /* c-style arrays */
0, /* String lower bound */
- NULL,
default_word_break_characters,
unknown_language_arch_info, /* la_language_arch_info. */
default_print_array_index,
{
"local",
language_auto,
- NULL,
range_check_off,
type_check_off,
case_sensitive_on,
unk_op_print_tab, /* expression operators for printing */
1, /* c-style arrays */
0, /* String lower bound */
- NULL,
default_word_break_characters,
unknown_language_arch_info, /* la_language_arch_info. */
default_print_array_index,
{
struct language_gdbarch *ld = gdbarch_data (gdbarch,
language_gdbarch_data);
- if (ld->arch_info[la->la_language].string_char_type != NULL)
- return ld->arch_info[la->la_language].string_char_type;
- else
- return (*la->string_char_type);
+ return ld->arch_info[la->la_language].string_char_type;
}
struct type *
{
struct language_gdbarch *ld = gdbarch_data (gdbarch,
language_gdbarch_data);
- if (ld->arch_info[la->la_language].primitive_type_vector != NULL)
- {
- struct type *const *p;
- for (p = ld->arch_info[la->la_language].primitive_type_vector;
- (*p) != NULL;
- p++)
- {
- if (strcmp (TYPE_NAME (*p), name) == 0)
- return (*p);
- }
- }
- else
+ struct type *const *p;
+ for (p = ld->arch_info[la->la_language].primitive_type_vector;
+ (*p) != NULL;
+ p++)
{
- struct type **const *p;
- for (p = current_language->la_builtin_type_vector; *p != NULL; p++)
- {
- if (strcmp (TYPE_NAME (**p), name) == 0)
- return (**p);
- }
+ if (strcmp (TYPE_NAME (*p), name) == 0)
+ return (*p);
}
return (NULL);
}
enum language la_language;
- /* Its builtin types. This is a vector ended by a NULL pointer. These
- types can be specified by name in parsing types in expressions,
- regardless of whether the program being debugged actually defines
- such a type. */
-
- struct type **const *la_builtin_type_vector;
-
/* Default range checking */
enum range_check la_range_check;
/* Index to use for extracting the first element of a string. */
char string_lower_bound;
- /* Type of elements of strings. */
- struct type **string_char_type;
-
/* The list of characters forming word boundaries. */
char *(*la_word_break_characters) (void);
{
"modula-2",
language_m2,
- NULL,
range_check_on,
type_check_on,
case_sensitive_on,
m2_op_print_tab, /* expression operators for printing */
0, /* arrays are first-class (not c-style) */
0, /* String lower bound */
- NULL,
default_word_break_characters,
m2_language_arch_info,
default_print_array_index,
const struct language_defn objc_language_defn = {
"objective-c", /* Language name */
language_objc,
- NULL,
range_check_off,
type_check_off,
case_sensitive_on,
objc_op_print_tab, /* Expression operators for printing */
1, /* C-style arrays */
0, /* String lower bound */
- NULL,
default_word_break_characters,
c_language_arch_info,
default_print_array_index,
{
"pascal", /* Language name */
language_pascal,
- NULL,
range_check_on,
type_check_on,
case_sensitive_on,
pascal_op_print_tab, /* expression operators for printing */
1, /* c-style arrays */
0, /* String lower bound */
- NULL,
default_word_break_characters,
pascal_language_arch_info,
default_print_array_index,
{
"scheme", /* Language name */
language_scm,
- NULL,
range_check_off,
type_check_off,
case_sensitive_off,
NULL, /* expression operators for printing */
1, /* c-style arrays */
0, /* String lower bound */
- NULL,
default_word_break_characters,
c_language_arch_info,
default_print_array_index,