diff options
author | Mark Mitchell <mark@codesourcery.com> | 2004-07-02 21:59:42 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 2004-07-02 21:59:42 +0000 |
commit | 717733d4539b2cac3a6a41c4a63eda56864c7364 (patch) | |
tree | 77a90207a7436944b80880b919d1be2d7ad004a1 /gcc/cp | |
parent | bdef9659324910f7f1f33d47b8ee57475fdf54ce (diff) | |
download | gcc-717733d4539b2cac3a6a41c4a63eda56864c7364.zip gcc-717733d4539b2cac3a6a41c4a63eda56864c7364.tar.gz gcc-717733d4539b2cac3a6a41c4a63eda56864c7364.tar.bz2 |
re PR c++/16270 (ICE on inner member template)
PR c++/16270
* decl.c (grokdeclarator): Robustify.
From-SVN: r84029
Diffstat (limited to 'gcc/cp')
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/decl.c | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 7ebda95..dc5fa28 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2004-07-02 Mark Mitchell <mark@codesourcery.com> + + PR c++/16270 + * decl.c (grokdeclarator): Robustify. + 2004-07-01 Richard Henderson <rth@redhat.com> * class.c (fixed_type_or_null): Don't handle RTL_EXPR. diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index ee7d76f..e591a25 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -6379,6 +6379,8 @@ grokdeclarator (const cp_declarator *declarator, } if (TREE_CODE (decl) == BASELINK) decl = BASELINK_FUNCTIONS (decl); + if (decl == error_mark_node) + return error_mark_node; switch (TREE_CODE (decl)) { case BIT_NOT_EXPR: |