From 04ddee1bcff0bccd97a54dd9e52b948bca58e009 Mon Sep 17 00:00:00 2001 From: Benjamin Kosnik Date: Tue, 22 Sep 1998 12:05:50 +0000 Subject: decl.c (make_typename_type): Move error to point where name variable can be used by dump_type. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit � 1998-09-22 Benjamin Kosnik * decl.c (make_typename_type): Move error to point where name variable can be used by dump_type. From-SVN: r22550 --- gcc/cp/ChangeLog | 5 +++++ gcc/cp/decl.c | 18 +++++++++--------- 2 files changed, 14 insertions(+), 9 deletions(-) (limited to 'gcc') diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 360dcb0..ade6763 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +1998-09-22 Benjamin Kosnik + + * decl.c (make_typename_type): Move error to point where name + variable can be used by dump_type. + 1998-09-22 Mark Mitchell * decl.c (grokfndecl): Improve error-recovery. diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 17078e0..a8317cc 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -4787,15 +4787,6 @@ make_typename_type (context, name) fullname = name; - if (TREE_CODE (context) == NAMESPACE_DECL) - { - /* We can get here from typename_sub0 in the explicit_template_type - expansion. Just fail. */ - cp_error ("no class template named `%#T' in `%#T'", - name, context); - return error_mark_node; - } - if (TREE_CODE (name) == TEMPLATE_ID_EXPR) { name = TREE_OPERAND (name, 0); @@ -4805,6 +4796,15 @@ make_typename_type (context, name) if (TREE_CODE (name) != IDENTIFIER_NODE) my_friendly_abort (2000); + if (TREE_CODE (context) == NAMESPACE_DECL) + { + /* We can get here from typename_sub0 in the explicit_template_type + expansion. Just fail. */ + cp_error ("no class template named `%#T' in `%#T'", + name, context); + return error_mark_node; + } + if (! uses_template_parms (context) || currently_open_class (context)) { -- cgit v1.1