diff options
author | Paul N. Hilfinger <hilfinger@adacore.com> | 2004-09-18 22:23:23 +0000 |
---|---|---|
committer | Paul N. Hilfinger <hilfinger@adacore.com> | 2004-09-18 22:23:23 +0000 |
commit | 72d5681a84985b3eef4cb6bf613026c151f4a5b4 (patch) | |
tree | 8352c394eec54f9b0f03318980b1973bc1c15656 /gdb/ada-lex.l | |
parent | 30b0e2d89f2dd2a37c2d459fa8007306e67c8e2e (diff) | |
download | gdb-72d5681a84985b3eef4cb6bf613026c151f4a5b4.zip gdb-72d5681a84985b3eef4cb6bf613026c151f4a5b4.tar.gz gdb-72d5681a84985b3eef4cb6bf613026c151f4a5b4.tar.bz2 |
* 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.l | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/gdb/ada-lex.l b/gdb/ada-lex.l index 21dba2c..6ecd849 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 |