C++ PATCH for c++/43036 (infinite loop on circular array variant list)

Jason Merrill jason@redhat.com
Tue Feb 16 05:57:00 GMT 2010


The C++ front end wants to retain the property that TYPE_MAIN_VARIANT of 
an ARRAY_TYPE gives you the main variant all the way down to the first 
non-array type, in the same way that applying cv-quals to an array type 
applies them to the element type.  Previously this was done in 
cp_build_qualified_type_real in a strange way that goes back and messes 
with the TYPE_MAIN_VARIANT of other types as well, which resulted in 
this bug.

This patch sets TYPE_MAIN_VARIANT appropriately in 
build_cplus_array_type instead, much more simply.

Tested x86_64-pc-linux-gnu, applied to trunk.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 43036.patch
Type: text/x-patch
Size: 5245 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20100216/e3d04014/attachment.bin>


More information about the Gcc-patches mailing list