re PR c++/11596 (ICE with int templates)
authorNathan Sidwell <nathan@gcc.gnu.org>
Fri, 25 Jul 2003 10:16:13 +0000 (10:16 +0000)
committerNathan Sidwell <nathan@gcc.gnu.org>
Fri, 25 Jul 2003 10:16:13 +0000 (10:16 +0000)
commita91db711890ba12e2385bf10480a5f6c270c2e2f
tree93b81ba56c622ef6f046ebedd0ad9b4aced3cb5d
parentb6fe0bb8c5a68ed64a124734c3fdc39777f8f7e6
re PR c++/11596 (ICE with int templates)

cp:
PR c++/11596
* pt.c (maybe_fold_nontype_arg, maybe_fold_nontype_args): Remove.
(tsubst_template_arg): New.
(tsubst_template_arg_vector): Rename to ...
(tsubst_template_args): ... this. Accept a TREE_LIST form. Use
tsubst_template_arg.
(coerce_template_parms): Use tsubst_template_arg for default
value.
(tsubst_template_parms): Likewise.
(tsubst_aggr_type): Adjust.
(tsubst_decl): Likewise.
(tsubst): Use tsubst_template_arg for a DOMAIN. Adjust.
(tsubst_copy) <TEMPLATE_ID_EXPR case>: Use tsubst_template_args.
testsuite:
PR 11596
* g++.dg/template/defarg3.C: New test.

* g++.dg/ext/packed2.C: Pack member struct too. Explain why.

From-SVN: r69776
gcc/cp/ChangeLog
gcc/cp/pt.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/ext/packed2.C
gcc/testsuite/g++.dg/template/defarg3.C [new file with mode: 0644]