diff options
author | Alan Modra <amodra@bigpond.net.au> | 2003-02-20 01:02:39 +0000 |
---|---|---|
committer | Alan Modra <amodra@bigpond.net.au> | 2003-02-20 01:02:39 +0000 |
commit | 5ddd7b60fda4c4045212a0f5964a41eaaa2fc667 (patch) | |
tree | 3cfb22e323f125906d40eee828e502d78301a31d /ld | |
parent | 3022f92f9604587e2c9544ac1c61f7d1b5346183 (diff) | |
download | binutils-redhat-5ddd7b60fda4c4045212a0f5964a41eaaa2fc667.tar.gz |
* 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')
-rw-r--r-- | ld/ChangeLog | 9 | ||||
-rw-r--r-- | ld/ldgram.y | 17 |
2 files changed, 25 insertions, 1 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index eab0eed713..e13943af12 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,12 @@ +2003-02-20 Phil Edwards <pme@gcc.gnu.org> + + * ldgram.y (vers_defns): Also recurse with 'EXTERN NAME' patterns. + +2003-02-20 Harri Porten <porten@kde.org> + + * ldgram.y (vers_defns): Allow optional trailing semicolon in + EXTERN NAME block; + 2003-02-18 Alan Modra <amodra@bigpond.net.au> * emultempl/ppc32elf.em: New file. diff --git a/ld/ldgram.y b/ld/ldgram.y index 5904accce6..fadc3e534e 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) |