------- Comment #9 from rguenth at gcc dot gnu dot org 2010-02-13 10:45 ------- Confirmed.
We loop in 0x0823fa53 in cp_build_qualified_type_real (type=0xb39cbf70, type_quals=1, complain=7) at /home/richard/src/gcc-4_4-branch/gcc/cp/tree.c:781 781 for (t = TYPE_MAIN_VARIANT (type); t; t = TYPE_NEXT_VARIANT (t)) (gdb) finish Run till exit from #0 0x0823fa53 in cp_build_qualified_type_real ( type=0xb39cbf70, type_quals=1, complain=7) at /home/richard/src/gcc-4_4-branch/gcc/cp/tree.c:781 for (gdb) call debug_tree (type) <array_type 0xb39cbf70 IF12_IF12_string_7_2 type <array_type 0xb39c6c30 IF12_string_7 type <integer_type 0xb77651a0 char public string-flag type_6 QI size <integer_cst 0xb77546ac constant 8> (gdb) p type $3 = (tree) 0xb39cbf70 (gdb) p type->type.next_variant $4 = (union tree_node *) 0xb39d0888 (gdb) p type->type.main_variant->type.next_variant->type.next_variant->type.next_variant->type.next_variant->type.next_variant->type.next_variant $9 = (union tree_node *) 0xb39d0888 so we have a cyclic type variant list. Obviously not a too bright idea. -- rguenth at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|WAITING |NEW Ever Confirmed|0 |1 Known to fail| |4.3.4 4.4.3 4.5.0 Known to work| |4.2.4 Last reconfirmed|0000-00-00 00:00:00 |2010-02-13 10:45:17 date| | Summary|c++ compilation hang |[4.3/4.4/4.5 Regresion] c++ | |compilation hang Target Milestone|--- |4.3.5 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43036