diff options
author | reichelt <reichelt@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-07-19 19:56:29 +0000 |
---|---|---|
committer | reichelt <reichelt@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-07-19 19:56:29 +0000 |
commit | 77874a3c450f5572fc34c9af625d34a26c96bfdf (patch) | |
tree | bfdfa9fcc8bec38756d110988eff8e2a3bd6f53c /gcc/objc | |
parent | 3a9d2a825a25a6fc50109653752de7c9f73bb8b6 (diff) | |
download | gcc-77874a3c450f5572fc34c9af625d34a26c96bfdf.tar.gz |
PR obj-c++/28434
* objc-act.c (lookup_and_install_protocols): Skip error_mark_nodes.
* obj-c++.dg/proto-error-1.mm: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@115599 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/objc')
-rw-r--r-- | gcc/objc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/objc/objc-act.c | 8 |
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/objc/ChangeLog b/gcc/objc/ChangeLog index ee36565ea40..63c32e3d6e9 100644 --- a/gcc/objc/ChangeLog +++ b/gcc/objc/ChangeLog @@ -1,3 +1,8 @@ +2006-07-19 Volker Reichelt <reichelt@igpm.rwth-aachen.de> + + PR obj-c++/28434 + * objc-act.c (lookup_and_install_protocols): Skip error_mark_nodes. + 2006-06-06 Mike Stump <mrs@apple.com> * objc-act.c: Remove prototype for objc_build_volatilized_type. diff --git a/gcc/objc/objc-act.c b/gcc/objc/objc-act.c index 39d12fc00c6..88b9386a386 100644 --- a/gcc/objc/objc-act.c +++ b/gcc/objc/objc-act.c @@ -1433,12 +1433,12 @@ lookup_and_install_protocols (tree protocols) tree ident = TREE_VALUE (proto); tree p = lookup_protocol (ident); - if (!p) - error ("cannot find protocol declaration for %qs", - IDENTIFIER_POINTER (ident)); - else + if (p) return_value = chainon (return_value, build_tree_list (NULL_TREE, p)); + else if (ident != error_mark_node) + error ("cannot find protocol declaration for %qs", + IDENTIFIER_POINTER (ident)); } return return_value; |