diff options
author | Jeffrey D. Oldham <oldham@codesourcery.com> | 2003-02-24 20:39:38 +0000 |
---|---|---|
committer | Jeffrey D. Oldham <oldham@gcc.gnu.org> | 2003-02-24 20:39:38 +0000 |
commit | 8b6a662e3ee24778eb7bf9556cd807e10f996cee (patch) | |
tree | 59c913d5c09859ce7abc14016d219f38cd7ec3a7 /gcc/cp | |
parent | 57df94c8f6a7bf0a9e0ccf8bf0d81a4d16514a12 (diff) | |
download | gcc-8b6a662e3ee24778eb7bf9556cd807e10f996cee.zip gcc-8b6a662e3ee24778eb7bf9556cd807e10f996cee.tar.gz gcc-8b6a662e3ee24778eb7bf9556cd807e10f996cee.tar.bz2 |
re PR c++/9778 (ICE with sizeof(expr) in non-type template arg)
2003-02-24 Jeffrey D. Oldham <oldham@codesourcery.com>
PR c++/9778
* cp/pt.c (tsubst_copy_and_build): For a templated function inside a
scope, process template arguments.
* testsuite/g++.dg/parse/template6.C: New test case.
From-SVN: r63379
Diffstat (limited to 'gcc/cp')
-rw-r--r-- | gcc/cp/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cp/pt.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index cfdaac8..dff7c4f 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2003-02-24 Jeffrey D. Oldham <oldham@codesourcery.com> + + PR c++/9778 + * pt.c (tsubst_copy_and_build): For a templated function inside a + scope, process template arguments. + 2003-02-24 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> PR c++/9602 diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c index 36ae04d..053a967 100644 --- a/gcc/cp/pt.c +++ b/gcc/cp/pt.c @@ -8137,7 +8137,7 @@ tsubst_copy_and_build (t, args, complain, in_decl) if (TREE_CODE (name) == TEMPLATE_ID_EXPR) name = build_nt (TEMPLATE_ID_EXPR, TREE_OPERAND (name, 0), - TREE_OPERAND (name, 1)); + build_expr_from_tree (TREE_OPERAND (name, 1))); function = resolve_scoped_fn_name (TREE_OPERAND (function, 0), name); |