Commit c946ce8b by Douglas Gregor Committed by Doug Gregor

re PR c++/33185 (ICE: canonical types differ for identical types T [] and T [])

2007-09-24  Douglas Gregor  <doug.gregor@gmail.com>

	PR c++/33185	
	* tree.c (cp_build_qualified_type_real): Build a canonical
	ARRAY_TYPE if the original ARRAY_TYPE was not a canonical type.

From-SVN: r128717
parent ffda6fc9
2007-09-24 Douglas Gregor <doug.gregor@gmail.com> 2007-09-24 Douglas Gregor <doug.gregor@gmail.com>
PR c++/33185
* tree.c (cp_build_qualified_type_real): Build a canonical
ARRAY_TYPE if the original ARRAY_TYPE was not a canonical type.
2007-09-24 Douglas Gregor <doug.gregor@gmail.com>
PR c++/33112 PR c++/33112
PR c++/33185 PR c++/33185
* tree.c (cplus_array_compare): Compare pointers, not types. * tree.c (cplus_array_compare): Compare pointers, not types.
......
...@@ -738,7 +738,8 @@ cp_build_qualified_type_real (tree type, ...@@ -738,7 +738,8 @@ cp_build_qualified_type_real (tree type,
SET_TYPE_STRUCTURAL_EQUALITY (t); SET_TYPE_STRUCTURAL_EQUALITY (t);
else if (TYPE_CANONICAL (element_type) != element_type else if (TYPE_CANONICAL (element_type) != element_type
|| (index_type || (index_type
&& TYPE_CANONICAL (index_type) != index_type)) && TYPE_CANONICAL (index_type) != index_type)
|| TYPE_CANONICAL (type) != type)
TYPE_CANONICAL (t) TYPE_CANONICAL (t)
= build_cplus_array_type = build_cplus_array_type
(TYPE_CANONICAL (element_type), (TYPE_CANONICAL (element_type),
......
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