http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60051

            Bug ID: 60051
           Summary: [4.9 Regression] [c++11] ICE with auto and array
                    initialization
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: reichelt at gcc dot gnu.org

The following invalid code snippet (compiled with "-std=c++11") triggers an
ICE on trunk:

==================================
#include <initializer_list>

auto x[2] = {};
==================================

bug.cc:3:14: internal compiler error: tree check: expected integer_type or
enumeral_type or boolean_type or real_type or fixed_point_type, have error_mark
in unify_array_domain, at cp/pt.c:17098
 auto x[2] = {};
              ^
0xdc4964 tree_check_failed(tree_node const*, char const*, int, char const*,
...)
        ../../gcc/gcc/tree.c:9192
0x6394e9 tree_check5
        ../../gcc/gcc/tree.h:2800
0x6394e9 unify_array_domain
        ../../gcc/gcc/cp/pt.c:17098
0x636a8e unify
        ../../gcc/gcc/cp/pt.c:17263
0x639b17 unify_one_argument
        ../../gcc/gcc/cp/pt.c:16161
0x63bf74 type_unification_real
        ../../gcc/gcc/cp/pt.c:16233
0x649b8a do_auto_deduction(tree_node*, tree_node*, tree_node*)
        ../../gcc/gcc/cp/pt.c:21471
0x5db471 cp_finish_decl(tree_node*, tree_node*, bool, tree_node*, int)
        ../../gcc/gcc/cp/decl.c:6200
0x6caa1d cp_parser_init_declarator
        ../../gcc/gcc/cp/parser.c:16815
0x6cc1d9 cp_parser_simple_declaration
        ../../gcc/gcc/cp/parser.c:11205
0x6af4b3 cp_parser_block_declaration
        ../../gcc/gcc/cp/parser.c:11086
0x6d67b2 cp_parser_declaration
        ../../gcc/gcc/cp/parser.c:10983
0x6d54a8 cp_parser_declaration_seq_opt
        ../../gcc/gcc/cp/parser.c:10869
0x6d6d8a cp_parser_translation_unit
        ../../gcc/gcc/cp/parser.c:4014
0x6d6d8a c_parse_file()
        ../../gcc/gcc/cp/parser.c:31528
0x7f66d3 c_common_parse_file()
        ../../gcc/gcc/c-family/c-opts.c:1060
Please submit a full bug report, [etc.]

The regression was introduced between 2013-10-12 and 2013-10-19.

Reply via email to