diff options
author | Alan Modra <amodra@gmail.com> | 2003-02-20 01:02:39 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2003-02-20 01:02:39 +0000 |
commit | 8e23b15d1cd68862503d11996be661999b8584c0 (patch) | |
tree | 0894037e42e1472e70bb048442b6225142713a98 /ld/ldgram.y | |
parent | fe898f56a1df2d8a610899df50e38d1590f3e57a (diff) | |
download | gdb-8e23b15d1cd68862503d11996be661999b8584c0.zip gdb-8e23b15d1cd68862503d11996be661999b8584c0.tar.gz gdb-8e23b15d1cd68862503d11996be661999b8584c0.tar.bz2 |
* ldgram.y (vers_defns): Also recurse with 'EXTERN NAME' patterns.
* ldgram.y (vers_defns): Allow optional trailing semicolon in
EXTERN NAME block;
Diffstat (limited to 'ld/ldgram.y')
-rw-r--r-- | ld/ldgram.y | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/ld/ldgram.y b/ld/ldgram.y index 5904acc..fadc3e5 100644 --- a/ld/ldgram.y +++ b/ld/ldgram.y @@ -1130,18 +1130,33 @@ vers_defns: { $$ = lang_new_vers_pattern ($1, $3, ldgram_vers_current_lang); } + | vers_defns ';' EXTERN NAME '{' + { + $<name>$ = ldgram_vers_current_lang; + ldgram_vers_current_lang = $4; + } + vers_defns opt_semicolon '}' + { + $$ = $7; + ldgram_vers_current_lang = $<name>6; + } | EXTERN NAME '{' { $<name>$ = ldgram_vers_current_lang; ldgram_vers_current_lang = $2; } - vers_defns '}' + vers_defns opt_semicolon '}' { $$ = $5; ldgram_vers_current_lang = $<name>4; } ; +opt_semicolon: + /* empty */ + | ';' + ; + %% void yyerror(arg) |