aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/parser.c
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>2003-07-14 19:05:05 +0000
committerMark Mitchell <mmitchel@gcc.gnu.org>2003-07-14 19:05:05 +0000
commit5e08432ed0c87fe0e2a6b144e1f87b7615a08d46 (patch)
treecf301c886bb9f86fa5fd71ba555a1ae37357e0b2 /gcc/cp/parser.c
parentbda243ec50619e4b80e35a8c77a9ebc44647ca38 (diff)
downloadgcc-5e08432ed0c87fe0e2a6b144e1f87b7615a08d46.zip
gcc-5e08432ed0c87fe0e2a6b144e1f87b7615a08d46.tar.gz
gcc-5e08432ed0c87fe0e2a6b144e1f87b7615a08d46.tar.bz2
re PR c++/7019 ([3.3 only] SFINAE does not work with explicitally specified template arguments)
PR c++/7019 * cp-tree.h (lookup_qualified_name): Adjust prototype. * decl.c (lookup_qualified_name): Add complain parameter. Adjust call to is_aggr_type. * parser.c (cp_parser_lookup_name): Adjust call to lookup_qualified_name. * pt.c (tsubst_qualified_id): Likewise. (tsubst_copy_and_build): Likewise. * semantics.c (finish_qualified_id_expr): Deal with erroneous expressions. PR c++/7019 * g++.dg/template/overload2.C: New test. From-SVN: r69342
Diffstat (limited to 'gcc/cp/parser.c')
-rw-r--r--gcc/cp/parser.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c
index 98411a6..bfce0ca 100644
--- a/gcc/cp/parser.c
+++ b/gcc/cp/parser.c
@@ -12825,7 +12825,8 @@ cp_parser_lookup_name (cp_parser *parser, tree name,
may be instantiated during name lookup. In that case,
errors may be issued. Even if we rollback the current
tentative parse, those errors are valid. */
- decl = lookup_qualified_name (parser->scope, name, is_type);
+ decl = lookup_qualified_name (parser->scope, name, is_type,
+ /*complain=*/true);
if (dependent_p)
pop_scope (parser->scope);
}