diff options
author | Kriang Lerdsuwanakij <lerdsuwa@scf-fs.usc.edu> | 2000-08-12 02:09:02 +0000 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2000-08-11 22:09:02 -0400 |
commit | fa1f3ebcf4eaff31c60dcb2f60241c0a050df7b7 (patch) | |
tree | 1780ecd553b50f2cc20dc9d61178ebd9b5089016 | |
parent | 9845b52bfbbfe165725ff96f9802530bbc26d007 (diff) | |
download | gcc-fa1f3ebcf4eaff31c60dcb2f60241c0a050df7b7.zip gcc-fa1f3ebcf4eaff31c60dcb2f60241c0a050df7b7.tar.gz gcc-fa1f3ebcf4eaff31c60dcb2f60241c0a050df7b7.tar.bz2 |
parse.y (template_arg): Add rule for template qualified with global scope.
* parse.y (template_arg): Add rule for template qualified with
global scope.
From-SVN: r35654
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/parse.y | 6 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.pt/ttp63.C | 7 |
3 files changed, 18 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 82ceceb..f05ee32 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2000-08-11 Kriang Lerdsuwanakij <lerdsuwa@scf-fs.usc.edu> + + * parse.y (template_arg): Add rule for template qualified with + global scope. + 2000-08-11 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> * decl2.c (add_function): Reorganize. diff --git a/gcc/cp/parse.y b/gcc/cp/parse.y index 09108d4..2aba608 100644 --- a/gcc/cp/parse.y +++ b/gcc/cp/parse.y @@ -1065,6 +1065,12 @@ template_arg: if (DECL_TEMPLATE_TEMPLATE_PARM_P ($$)) $$ = TREE_TYPE ($$); } + | global_scope PTYPENAME + { + $$ = lastiddecl; + if (DECL_TEMPLATE_TEMPLATE_PARM_P ($$)) + $$ = TREE_TYPE ($$); + } | expr_no_comma_rangle ; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp63.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp63.C new file mode 100644 index 0000000..43abedb --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp63.C @@ -0,0 +1,7 @@ +// Build don't link: +// Origin: Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> + +template <template <class> class TT> class X {}; +template <class T> class Y { + X< ::Y> x; +}; |