X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fada-exp.y;h=57d89b01fec6c6c44886a14ab89561d4f5afaa4e;hb=a350efd4fb368a35ada608f6bc26ccd3bed0ae6b;hp=ff3ce7639244ade6a7eadf1abeea7545d8f428d5;hpb=468c0cbb327fadf28386a989f929fcbed4aed8b9;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/ada-exp.y b/gdb/ada-exp.y index ff3ce76392..57d89b01fe 100644 --- a/gdb/ada-exp.y +++ b/gdb/ada-exp.y @@ -1,5 +1,5 @@ /* YACC parser for Ada expressions, for GDB. - Copyright (C) 1986-2019 Free Software Foundation, Inc. + Copyright (C) 1986-2020 Free Software Foundation, Inc. This file is part of GDB. @@ -1105,8 +1105,8 @@ write_ambiguous_var (struct parser_state *par_state, struct symbol *sym = new (&temp_parse_space) symbol (); SYMBOL_DOMAIN (sym) = UNDEF_DOMAIN; - SYMBOL_LINKAGE_NAME (sym) = obstack_strndup (&temp_parse_space, name, len); - SYMBOL_LANGUAGE (sym) = language_ada; + sym->set_linkage_name (obstack_strndup (&temp_parse_space, name, len)); + sym->set_language (language_ada, nullptr); write_exp_elt_opcode (par_state, OP_VAR_VALUE); write_exp_elt_block (par_state, block); @@ -1158,7 +1158,7 @@ get_symbol_field_type (struct symbol *sym, char *encoded_field_name) fieldno = ada_get_field_index (type, field_name, 1); if (fieldno >= 0) - return TYPE_FIELD_TYPE (type, fieldno); + return type->field (fieldno).type (); subfield_name = field_name; while (*subfield_name != '\0' && *subfield_name != '.' @@ -1173,7 +1173,7 @@ get_symbol_field_type (struct symbol *sym, char *encoded_field_name) if (fieldno < 0) return NULL; - type = TYPE_FIELD_TYPE (type, fieldno); + type = type->field (fieldno).type (); field_name = subfield_name; } @@ -1386,7 +1386,7 @@ convert_char_literal (struct type *type, LONGEST val) if (type == NULL) return val; type = check_typedef (type); - if (TYPE_CODE (type) != TYPE_CODE_ENUM) + if (type->code () != TYPE_CODE_ENUM) return val; if ((val >= 'a' && val <= 'z') || (val >= '0' && val <= '9')) @@ -1394,7 +1394,7 @@ convert_char_literal (struct type *type, LONGEST val) else xsnprintf (name, sizeof (name), "QU%02x", (int) val); size_t len = strlen (name); - for (f = 0; f < TYPE_NFIELDS (type); f += 1) + for (f = 0; f < type->num_fields (); f += 1) { /* Check the suffix because an enum constant in a package will have a name like "pkg__QUxx". This is safe enough because we @@ -1456,8 +1456,9 @@ type_system_address (struct parser_state *par_state) return type != NULL ? type : parse_type (par_state)->builtin_data_ptr; } +void _initialize_ada_exp (); void -_initialize_ada_exp (void) +_initialize_ada_exp () { obstack_init (&temp_parse_space); }