re PR c++/53209 (tree check ICE: expected tree_vec, have error_mark in comp_template_args_with_info, at cp/pt.c:7038)

PR c++/53209
* pt.c (tsubst_decl): Bail out if argvec is error_mark_node.

From-SVN: r187497
This commit is contained in:
Alexandre Oliva 2012-05-15 04:25:25 +00:00 committed by Alexandre Oliva
parent 4d4f41fab3
commit d3f3539c54
2 changed files with 7 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2012-05-15 Alexandre Oliva <aoliva@redhat.com>
PR c++/53209
* pt.c (tsubst_decl): Bail out if argvec is error_mark_node.
2012-05-10 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/53301

View File

@ -10668,6 +10668,8 @@ tsubst_decl (tree t, tree args, tsubst_flags_t complain)
tmpl = DECL_TI_TEMPLATE (t);
gen_tmpl = most_general_template (tmpl);
argvec = tsubst (DECL_TI_ARGS (t), args, complain, in_decl);
if (argvec == error_mark_node)
RETURN (error_mark_node);
hash = hash_tmpl_and_args (gen_tmpl, argvec);
spec = retrieve_specialization (gen_tmpl, argvec, hash);
}