src/gdb ada-exp.y ada-lang.c ada-lang.h ada-le ...
<hilfingr <at> sourceware.org>
2006-01-02 09:46:34 GMT
CVSROOT: /cvs/src
Module name: src
Changes by: hilfingr <at> sourceware.org 2006-01-02 09:46:34
Modified files:
gdb : ada-exp.y ada-lang.c ada-lang.h ada-lex.l
ChangeLog
Log message:
* ada-exp.y: Considerable reorganization to move functionality
from ada-lex.l to here, where it is logically more appropriate.
The original reason, however, was to prevent premature name
lookups for selector names in record aggregates.
(BLOCKNAME, TYPENAME, OBJECT_RENAMING): Remove; lexer now returns
NAME for all of these.
(VAR): New artificial token to clarify precedence rules.
(OTHERS): New lexeme.
(empty_stoken): New symbol.
(%union): Remove ssym, voidval.
(%type): Remove <voidval> type declarations.
(syntax definitions): Add aggregates.
Remove distinction between NAME, TYPENAME, BLOCKNAME, OBJECT_RENAMING.
Rename some non-terminals to be closer to reference manual usage.
Tighten up expression syntax to disallow certain non-Ada
constructions such as X and then Y or else Z.
(ada_parse): Remove initialization of left_block_context.
(write_var_from_name): Remove.
(write_var_or_type): New function, containing previous code from
defunct write_var_from_name and name_lookup.
(block_lookup): New function, moved from ada-lex.l
(Continue reading)