summaryrefslogtreecommitdiff
path: root/gdb/ada-lex.l
diff options
context:
space:
mode:
authorPaul N. Hilfinger <hilfinger@adacore.com>2004-09-18 22:23:23 +0000
committerPaul N. Hilfinger <hilfinger@adacore.com>2004-09-18 22:23:23 +0000
commit60470ef19639288edbd69ec4b8aefd8031edbf0b (patch)
tree3fc9ffe05d4cb6df42d4507480d94004322691f5 /gdb/ada-lex.l
parent9699060d161ba0ce817f667add76f7aeaf726594 (diff)
downloadgdb-60470ef19639288edbd69ec4b8aefd8031edbf0b.tar.gz
* ada-exp.y (type_int): New function to add layer of abstraction
around references to expression types. (type_long): Ditto. (type_long_long): Ditto. (type_float): Ditto. (type_double): Ditto. (type_long_double): Ditto. (type_char): Ditto. (type_system_address): Ditto. (simple_exp): Use type_* functions in place of builtin_* variables. (exp): Ditto. (write_var_from_name): Ditto. (write_object_renaming): Ditto. * ada-lang.c (ada_create_fundamental_type): Remove redundant declaration. (build_ada_types): Remove, replacing with... (ada_language_arch_info): New function to initialize primitive type vector in language_arch_info. (ada_array_length): Remove use of builtin_type_ada_int. (value_pos_atr): Ditto. (ada_evaluate_subexp): Ditto. (builtin_type_ada_int, builtin_type_ada_short, builtin_type_ada_long, builtin_type_ada_long_long, builtin_type_ada_char, builtin_type_ada_float, builtin_type_ada_double, builtin_type_ada_long_double, builtin_type_ada_natural, builtin_type_ada_positive, builtin_type_ada_system_address): Remove. (ada_builtin_types): Remove. (ada_language_defn): Remove entries for la_builtin_type_vector and string_char_type and use ada_language_arch_info. (_initialize_ada_language): Do type-vector initialization along the lines of c-lang.c. (ada_create_fundamental_type): Break up line. (ada_dump_symtab): Remove unused function. (enum ada_primitive_types): Define. * ada-lang.h (builtin_type_ada_int, builtin_type_ada_short, builtin_type_ada_long,builtin_type_ada_long_long,builtin_type_ada_char, builtin_type_ada_float, builtin_type_ada_double, builtin_type_ada_long_double, builtin_type_ada_natural, builtin_type_ada_positive, builtin_type_ada_system_address): Remove. * ada-lex.l: Use type_* functions in place of builtin_* variables. (processInt): Ditto. (processReal): Ditto. (name_lookup): Ditto. * ada-typeprint.c (print_range): Use builtin_type_int, not builtin_type_ada_int.
Diffstat (limited to 'gdb/ada-lex.l')
-rw-r--r--gdb/ada-lex.l18
1 files changed, 9 insertions, 9 deletions
diff --git a/gdb/ada-lex.l b/gdb/ada-lex.l
index 21dba2c021b..6ecd849cdbc 100644
--- a/gdb/ada-lex.l
+++ b/gdb/ada-lex.l
@@ -144,14 +144,14 @@ static int find_dot_all (const char *);
}
<INITIAL>"'"({GRAPHIC}|\")"'" {
- yylval.typed_val.type = builtin_type_ada_char;
+ yylval.typed_val.type = type_char ();
yylval.typed_val.val = yytext[1];
return CHARLIT;
}
<INITIAL>"'[\""{HEXDIG}{2}"\"]'" {
int v;
- yylval.typed_val.type = builtin_type_ada_char;
+ yylval.typed_val.type = type_char ();
sscanf (yytext+3, "%2x", &v);
yylval.typed_val.val = v;
return CHARLIT;
@@ -478,9 +478,9 @@ processInt (const char *base0, const char *num0, const char *exp0)
}
if ((result >> (TARGET_INT_BIT-1)) == 0)
- yylval.typed_val.type = builtin_type_ada_int;
+ yylval.typed_val.type = type_int ();
else if ((result >> (TARGET_LONG_BIT-1)) == 0)
- yylval.typed_val.type = builtin_type_ada_long;
+ yylval.typed_val.type = type_long ();
else if (((result >> (TARGET_LONG_BIT-1)) >> 1) == 0)
{
/* We have a number representable as an unsigned integer quantity.
@@ -500,7 +500,7 @@ processInt (const char *base0, const char *num0, const char *exp0)
return INT;
}
else
- yylval.typed_val.type = builtin_type_ada_long_long;
+ yylval.typed_val.type = type_long_long ();
yylval.typed_val.val = (LONGEST) result;
return INT;
@@ -527,11 +527,11 @@ processReal (const char *num0)
yylval.typed_val_float.dval = temp;
}
- yylval.typed_val_float.type = builtin_type_ada_float;
+ yylval.typed_val_float.type = type_float ();
if (sizeof(DOUBLEST) >= TARGET_DOUBLE_BIT / TARGET_CHAR_BIT)
- yylval.typed_val_float.type = builtin_type_ada_double;
+ yylval.typed_val_float.type = type_double ();
if (sizeof(DOUBLEST) >= TARGET_LONG_DOUBLE_BIT / TARGET_CHAR_BIT)
- yylval.typed_val_float.type = builtin_type_ada_long_double;
+ yylval.typed_val_float.type = type_long_double ();
return FLOAT;
}
@@ -745,7 +745,7 @@ name_lookup (char *name0, char *err_name, int *token_type, int depth)
current_gdbarch,
name);
if (type == NULL && strcmp ("system__address", name) == 0)
- type = builtin_type_ada_system_address;
+ type = type_system_address ();
if (type != NULL)
{
/* First check to see if we have a regular definition of this