From 1e1b4b377ca66667f52b9f6ea0056c673136df90 Mon Sep 17 00:00:00 2001 From: Volker Reichelt Date: Wed, 31 Aug 2005 08:46:46 +0000 Subject: [PATCH] re PR c++/23639 (Bad error message: not a member of '') PR c++/23639 * semantics.c (qualified_name_lookup_error): Do not complain again on invalid scope. * g++.dg/template/ttp5.C: Adjust error markers. From-SVN: r103662 --- gcc/cp/ChangeLog | 6 ++++++ gcc/cp/semantics.c | 4 +++- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/g++.dg/template/ttp5.C | 2 +- 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index cc107753e19e..cc6a9696873e 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2005-08-31 Volker Reichelt + + PR c++/23639 + * semantics.c (qualified_name_lookup_error): Do not complain again + on invalid scope. + 2005-08-30 Volker Reichelt PR c++/23586 diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c index b2a28e2b846a..528d8b7e6d0c 100644 --- a/gcc/cp/semantics.c +++ b/gcc/cp/semantics.c @@ -2395,7 +2395,9 @@ finish_base_specifier (tree base, tree access, bool virtual_p) void qualified_name_lookup_error (tree scope, tree name, tree decl) { - if (TYPE_P (scope)) + if (scope == error_mark_node) + ; /* We already complained. */ + else if (TYPE_P (scope)) { if (!COMPLETE_TYPE_P (scope)) error ("incomplete type %qT used in nested name specifier", scope); diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index ee019b98f069..e457ae40d42b 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2005-08-31 Volker Reichelt + + PR c++/23639 + * g++.dg/template/ttp5.C: Adjust error markers. + 2005-08-30 Andrew Pinski PR testsuite/23609 diff --git a/gcc/testsuite/g++.dg/template/ttp5.C b/gcc/testsuite/g++.dg/template/ttp5.C index d26b8164eed8..ee9d1ff7cc95 100644 --- a/gcc/testsuite/g++.dg/template/ttp5.C +++ b/gcc/testsuite/g++.dg/template/ttp5.C @@ -16,5 +16,5 @@ template