parse.y (do_id): New nonterminal.
authorJason Merrill <jason@yorick.cygnus.com>
Sat, 6 Dec 1997 09:34:46 +0000 (09:34 +0000)
committerJason Merrill <jason@gcc.gnu.org>
Sat, 6 Dec 1997 09:34:46 +0000 (04:34 -0500)
* parse.y (do_id): New nonterminal.
(template_id): Use it.

From-SVN: r16974

gcc/cp/ChangeLog
gcc/cp/parse.y

index 225f262b613249f6bd756263491ed7c285e7e118..12017a78aa6cc53141921fe31a2cb33b56531b57 100644 (file)
@@ -1,3 +1,8 @@
+Sat Dec  6 01:29:37 1997  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * parse.y (do_id): New nonterminal.
+       (template_id): Use it.
+
 Fri Dec  5 01:17:34 1997  Jason Merrill  <jason@yorick.cygnus.com>
 
        * parse.y (template_id): do_identifier for PFUNCNAMEs, too.
index 9628b8a1a43a7b36d2bf0cc0295871d481a926e1..43655139ba0761b9bd1e78e8b582f57385a47f4c 100644 (file)
@@ -228,7 +228,7 @@ empty_parms ()
 %type <ttype> fcast_or_absdcl regcast_or_absdcl
 %type <ttype> expr_or_declarator complex_notype_declarator
 %type <ttype> notype_unqualified_id unqualified_id qualified_id
-%type <ttype> template_id object_template_id notype_template_declarator
+%type <ttype> template_id do_id object_template_id notype_template_declarator
 %type <ttype> overqualified_id notype_qualified_id any_id
 %type <ttype> complex_direct_notype_declarator functional_cast
 %type <ttype> complex_parmlist parms_comma
@@ -1293,19 +1293,18 @@ notype_unqualified_id:
        | NSNAME  %prec EMPTY
        ;
 
+do_id:
+               { $$ = do_identifier ($<ttype>-1, 1); }
+
 template_id:
-        PFUNCNAME '<' template_arg_list template_close_bracket 
-                { $$ = lookup_template_function
-                   (do_identifier ($1, 1), $3); }
-        | PFUNCNAME '<' template_close_bracket
-                { $$ = lookup_template_function
-                   (do_identifier ($1, 1), NULL_TREE); }
-        | operator_name '<' template_arg_list template_close_bracket
-                { $$ = lookup_template_function 
-                   (do_identifier ($1, 1), $3); }
-        | operator_name '<' template_close_bracket
-                { $$ = lookup_template_function 
-                   (do_identifier ($1, 1), NULL_TREE); }
+          PFUNCNAME '<' do_id template_arg_list template_close_bracket 
+                { $$ = lookup_template_function ($3, $4); }
+        | PFUNCNAME '<' do_id template_close_bracket
+                { $$ = lookup_template_function ($3, NULL_TREE); }
+        | operator_name '<' do_id template_arg_list template_close_bracket
+                { $$ = lookup_template_function ($3, $4); }
+        | operator_name '<' do_id template_close_bracket
+                { $$ = lookup_template_function ($3, NULL_TREE); }
        ;
 
 object_template_id: