cp: PR c++/9978, c++/9708 * cp-tree.h (instantiate_template): Add tsubst_flags parameter. * call.c (add_template_candidate_real): Adjust instantiate_template call. * class.c (resolve_address_of_overloaded_function): Likewise. * decl.c (build_enumerator): Set TREE_CONSTANT. * pt.c (check_instantiated_args): New. (push_inline_template_parms_recursive): Set TREE_CONSTANT, TREE_READONLY. (build_template_parm_index): Copy TREE_CONSTANT, TREE_READONLY. (reduce_template_parm_level): Likewise. (process_template_parm): Likewise. (check_explicit_specialization): Adjust instantiate_template call. (convert_template_argument): Don't check non-type argument here. (lookup_template_class): Check them here. (tsubst_friend_function): Adjust instantiate_template call. (instantiate_template): Add tsubst_flags parameter, use it. Check instantiated args. testsuite: PR c++/9978, c++/9708 * g++.dg/ext/vlm1.C: Adjust expected error. * g++.dg/ext/vla2.C: New test. * g++.dg/template/arg1.C: New test. * g++.dg/template/arg2.C: New test. From-SVN: r64714
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
ChangeLog | Loading commit data... | |
ChangeLog.1 | Loading commit data... | |
ChangeLog.2 | Loading commit data... | |
ChangeLog.egcs | Loading commit data... | |
Make-lang.in | Loading commit data... | |
NEWS | Loading commit data... | |
call.c | Loading commit data... | |
cfns.gperf | Loading commit data... | |
cfns.h | Loading commit data... | |
class.c | Loading commit data... | |
config-lang.in | Loading commit data... | |
cp-lang.c | Loading commit data... | |
cp-tree.def | Loading commit data... | |
cp-tree.h | Loading commit data... | |
cvt.c | Loading commit data... | |
cxxfilt.c | Loading commit data... | |
decl.c | Loading commit data... | |
decl.h | Loading commit data... | |
decl2.c | Loading commit data... | |
dump.c | Loading commit data... | |
error.c | Loading commit data... | |
except.c | Loading commit data... | |
expr.c | Loading commit data... | |
friend.c | Loading commit data... | |
g++spec.c | Loading commit data... | |
init.c | Loading commit data... | |
lang-options.h | Loading commit data... | |
lang-specs.h | Loading commit data... | |
lex.c | Loading commit data... | |
lex.h | Loading commit data... | |
mangle.c | Loading commit data... | |
method.c | Loading commit data... | |
operators.def | Loading commit data... | |
optimize.c | Loading commit data... | |
parser.c | Loading commit data... | |
pt.c | Loading commit data... | |
ptree.c | Loading commit data... | |
repo.c | Loading commit data... | |
rtti.c | Loading commit data... | |
search.c | Loading commit data... | |
semantics.c | Loading commit data... | |
tree.c | Loading commit data... | |
typeck.c | Loading commit data... | |
typeck2.c | Loading commit data... |