https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79889

            Bug ID: 79889
           Summary: ICE in aarch64_process_target_attr, at
                    config/aarch64/aarch64.c:9537
           Product: gcc
           Version: 7.0
            Status: UNCONFIRMED
          Keywords: ice-on-invalid-code
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marxin at gcc dot gnu.org
  Target Milestone: ---

Following causes ICE:

$ aarch64-linux-gnu-g++
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/ext/mv8.C 
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/ext/mv8.C:5:15: internal
compiler error: in aarch64_process_target_attr, at
config/aarch64/aarch64.c:9537
 void foo (void) // { dg-error "not a string" }
               ^
0xd70c26 aarch64_process_target_attr(tree_node*, char const*)
        .././../gcc/config/aarch64/aarch64.c:9537
0xd70ba0 aarch64_process_target_attr(tree_node*, char const*)
        .././../gcc/config/aarch64/aarch64.c:9528
0xd70cad aarch64_option_valid_attribute_p
        .././../gcc/config/aarch64/aarch64.c:9632
0x77925e handle_target_attribute
        .././../gcc/c-family/c-attribs.c:3028
0x725ca4 decl_attributes(tree_node**, tree_node*, int)
        .././../gcc/attribs.c:548
0x652fec cplus_decl_attributes(tree_node**, tree_node*, int)
        .././../gcc/cp/decl2.c:1436
0x5b824e grokfndecl
        .././../gcc/cp/decl.c:8859
0x6068ee grokdeclarator(cp_declarator const*, cp_decl_specifier_seq*,
decl_context, int, tree_node**)
        .././../gcc/cp/decl.c:12225
0x608a26 start_function(cp_decl_specifier_seq*, cp_declarator const*,
tree_node*)
        .././../gcc/cp/decl.c:15137
0x68ceb4 cp_parser_function_definition_from_specifiers_and_declarator
        .././../gcc/cp/parser.c:26129
0x68ceb4 cp_parser_init_declarator
        .././../gcc/cp/parser.c:19141
0x68da4f cp_parser_simple_declaration
        .././../gcc/cp/parser.c:12773
0x68e66a cp_parser_block_declaration
        .././../gcc/cp/parser.c:12599
0x692c1e cp_parser_declaration
        .././../gcc/cp/parser.c:12496
0x693006 cp_parser_declaration_seq_opt
        .././../gcc/cp/parser.c:12372
0x693310 cp_parser_translation_unit
        .././../gcc/cp/parser.c:4366
0x693310 c_parse_file()
        .././../gcc/cp/parser.c:38427
0x762c32 c_common_parse_file()
        .././../gcc/c-family/c-opts.c:1107

It's invalid test-case and we should produce error message similar to what's
done in i386. I'll prepare patch for that.

Reply via email to