re PR objc++/28434 (ICE with invalid protocol)
PR obj-c++/28434 * objc-act.c (lookup_and_install_protocols): Skip error_mark_nodes. * obj-c++.dg/proto-error-1.mm: New test. From-SVN: r115599
This commit is contained in:
parent
0d24c3fa6f
commit
7eb314dc4b
4 changed files with 18 additions and 4 deletions
|
@ -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.
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2006-07-19 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
|
||||
|
||||
PR obj-c++/28434
|
||||
* obj-c++.dg/proto-error-1.mm: New test.
|
||||
|
||||
2006-07-18 Mark Mitchell <mark@codesourcery.com>
|
||||
|
||||
PR c++/28337
|
||||
|
|
4
gcc/testsuite/obj-c++.dg/proto-error-1.mm
Normal file
4
gcc/testsuite/obj-c++.dg/proto-error-1.mm
Normal file
|
@ -0,0 +1,4 @@
|
|||
// PR obj-c++/28434
|
||||
// { dg-do compile }
|
||||
|
||||
Class<> c; // { dg-error "identifier" }
|
Loading…
Add table
Reference in a new issue