aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorSteve Ellcey <sje@cup.hp.com>2006-07-17 15:21:42 +0000
committerSteve Ellcey <sje@gcc.gnu.org>2006-07-17 15:21:42 +0000
commitf566cc1b14363bc4b683bc9c39d962ac052033cd (patch)
tree1de2148e94c4d8050f60710c6d1566a3463e48af /gcc
parent1c1534e9e3df11583bd73b8f469442377a001a3e (diff)
downloadgcc-f566cc1b14363bc4b683bc9c39d962ac052033cd.zip
gcc-f566cc1b14363bc4b683bc9c39d962ac052033cd.tar.gz
gcc-f566cc1b14363bc4b683bc9c39d962ac052033cd.tar.bz2
re PR c++/28304 (ICE looking up invalid member template)
PR c++/28304 * decl2.c (check_classfn): Return NULL_TREE on error. From-SVN: r115521
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/decl2.c7
2 files changed, 10 insertions, 2 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 821df2b..4741d4a 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2006-07-17 Steve Ellcey <sje@cup.hp.com>
+
+ PR c++/28304
+ * decl2.c (check_classfn): Return NULL_TREE on error.
+
2006-07-17 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
PR c++/28250
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c
index dfb30f2..385f8d9 100644
--- a/gcc/cp/decl2.c
+++ b/gcc/cp/decl2.c
@@ -673,8 +673,11 @@ check_classfn (tree ctype, tree function, tree template_parms)
else if (!COMPLETE_TYPE_P (ctype))
cxx_incomplete_type_error (function, ctype);
else
- error ("no %q#D member function declared in class %qT",
- function, ctype);
+ {
+ error ("no %q#D member function declared in class %qT",
+ function, ctype);
+ return NULL_TREE;
+ }
/* If we did not find the method in the class, add it to avoid
spurious errors (unless the CTYPE is not yet defined, in which