From fa3546f12eff8fd7db529ecc3c42666c8c8218cd Mon Sep 17 00:00:00 2001 From: Paolo Carlini <paolo@gcc.gnu.org> Date: Tue, 14 Aug 2007 22:13:45 +0000 Subject: [PATCH] re PR c++/27211 (Bogus error "template definition of non-template" when there is no non-template) /cp 2007-08-14 Paolo Carlini <pcarlini@suse.de> PR c++/27211 * decl2.c (check_classfn): Return error_mark_node in case of error; in that case, do not call add_method. * decl.c (start_decl): Deal with check_classfn returning error_mark_node. (grokfndecl): Likewise. * pt.c (tsubst_friend_function): Likewise. /testsuite 2007-08-14 Paolo Carlini <pcarlini@suse.de> PR c++/27211 * g++.dg/template/error27.C: New. * g++.dg/template/error28.C: New. * g++.dg/other/pr28304.C: Adjust. * g++.old-deja/g++.mike/p811.C: Likewise. From-SVN: r127493 --- gcc/cp/pt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c index e4f56d806b3d..5a0bd7170ba4 100644 --- a/gcc/cp/pt.c +++ b/gcc/cp/pt.c @@ -6287,7 +6287,7 @@ tsubst_friend_function (tree decl, tree args) tree fn = check_classfn (context, new_friend, NULL_TREE); - if (fn) + if (fn && fn != error_mark_node) new_friend = fn; } } -- GitLab