Commit 2b14490e by Jason Merrill Committed by Jason Merrill

re PR c++/61566 (ICE in write_unscoped_name)

	PR c++/61566
	* pt.c (lookup_template_class_1): Revert recent change.
	* mangle.c (CLASSTYPE_TEMPLATE_ID_P): Revert recent change.

From-SVN: r214049
parent ab36d98d
2014-08-15 Jason Merrill <jason@redhat.com> 2014-08-15 Jason Merrill <jason@redhat.com>
PR c++/61566 PR c++/61566
* pt.c (lookup_template_class_1): Revert recent change.
* mangle.c (CLASSTYPE_TEMPLATE_ID_P): Revert recent change.
PR c++/61566
* pt.c (instantiate_class_template_1): Ignore lambda on * pt.c (instantiate_class_template_1): Ignore lambda on
CLASSTYPE_DECL_LIST. CLASSTYPE_DECL_LIST.
(push_template_decl_real): A lambda is not primary. (push_template_decl_real): A lambda is not primary.
......
...@@ -87,7 +87,6 @@ along with GCC; see the file COPYING3. If not see ...@@ -87,7 +87,6 @@ along with GCC; see the file COPYING3. If not see
(TYPE_LANG_SPECIFIC (NODE) != NULL \ (TYPE_LANG_SPECIFIC (NODE) != NULL \
&& (TREE_CODE (NODE) == BOUND_TEMPLATE_TEMPLATE_PARM \ && (TREE_CODE (NODE) == BOUND_TEMPLATE_TEMPLATE_PARM \
|| (CLASSTYPE_TEMPLATE_INFO (NODE) != NULL \ || (CLASSTYPE_TEMPLATE_INFO (NODE) != NULL \
&& !LAMBDA_TYPE_P (NODE) \
&& (PRIMARY_TEMPLATE_P (CLASSTYPE_TI_TEMPLATE (NODE)))))) && (PRIMARY_TEMPLATE_P (CLASSTYPE_TI_TEMPLATE (NODE))))))
/* Things we only need one of. This module is not reentrant. */ /* Things we only need one of. This module is not reentrant. */
......
...@@ -7878,8 +7878,6 @@ lookup_template_class_1 (tree d1, tree arglist, tree in_decl, tree context, ...@@ -7878,8 +7878,6 @@ lookup_template_class_1 (tree d1, tree arglist, tree in_decl, tree context,
&& TMPL_ARGS_HAVE_MULTIPLE_LEVELS (arglist) && TMPL_ARGS_HAVE_MULTIPLE_LEVELS (arglist)
/* the enclosing class must be an instantiation... */ /* the enclosing class must be an instantiation... */
&& CLASS_TYPE_P (context) && CLASS_TYPE_P (context)
/* We don't do partial instantiation of closures. */
&& !LAMBDA_TYPE_P (TREE_TYPE (gen_tmpl))
&& !same_type_p (context, DECL_CONTEXT (gen_tmpl))) && !same_type_p (context, DECL_CONTEXT (gen_tmpl)))
{ {
tree partial_inst_args; tree partial_inst_args;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment