https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68932
Bug ID: 68932
Summary: FAIL: obj-c++.dg/property/at-property-23.mm
-fgnu-runtime (internal compiler error)
Product: gcc
Version: 6.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: objc++
Assignee: unassigned at gcc dot gnu.org
Reporter: vries at gcc dot gnu.org
Target Milestone: ---
FAIL: obj-c++.dg/property/at-property-23.mm -fgnu-runtime (internal compiler
error)
PASS: obj-c++.dg/property/at-property-23.mm -fgnu-runtime (test for errors,
line 14)
PASS: obj-c++.dg/property/at-property-23.mm -fgnu-runtime (test for errors,
line 15)
FAIL: obj-c++.dg/property/at-property-23.mm -fgnu-runtime (test for errors,
line 16)
FAIL: obj-c++.dg/property/at-property-23.mm -fgnu-runtime (test for errors,
line 16)
FAIL: obj-c++.dg/property/at-property-23.mm -fgnu-runtime (test for excess
errors)
ICE:
...
src/gcc/testsuite/obj-c++.dg/property/at-property-23.mm:14:1: error: property
can not be an array
src/gcc/testsuite/obj-c++.dg/property/at-property-23.mm:15:16: error: expected
';' before ':' token
src/gcc/testsuite/obj-c++.dg/property/at-property-23.mm:16:17: internal
compiler error: Segmentation fault
0x11c6ccc crash_signal
src/gcc/toplev.c:334
0x7b6be7 grokdeclarator(cp_declarator const*, cp_decl_specifier_seq*,
decl_context, int, tree_node**)
src/gcc/cp/decl.c:10936
0x8958a9 grokfield(cp_declarator const*, cp_decl_specifier_seq*, tree_node*,
bool, tree_node*, tree_node*)
src/gcc/cp/decl2.c:880
0x8f4cb1 cp_parser_objc_struct_declaration
src/gcc/cp/parser.c:29142
0x8f5137 cp_parser_objc_at_property_declaration
src/gcc/cp/parser.c:29330
0x8f3781 cp_parser_objc_method_prototype_list
src/gcc/cp/parser.c:28394
0x8f437b cp_parser_objc_class_interface
src/gcc/cp/parser.c:28757
0x8f4579 cp_parser_objc_declaration
src/gcc/cp/parser.c:28846
0x8d5a16 cp_parser_declaration
src/gcc/cp/parser.c:12031
0x8d55ca cp_parser_declaration_seq_opt
src/gcc/cp/parser.c:11923
0x8c51b1 cp_parser_translation_unit
src/gcc/cp/parser.c:4246
0x916bb7 c_parse_file()
src/gcc/cp/parser.c:37268
0xabb432 c_common_parse_file()
src/gcc/c-family/c-opts.c:1064
...
In GDB:
...
src/gcc/testsuite/obj-c++.dg/property/at-property-23.mm:14:1: error: property
can not be an array
src/gcc/testsuite/obj-c++.dg/property/at-property-23.mm:15:16: error: expected
�;� before �:� token
Program received signal SIGSEGV, Segmentation fault.
0x00000000007b6be7 in grokdeclarator (declarator=0x2fdb0d0,
declspecs=0x7fffffffd250, decl_context=FIELD, initialized=0,
attrlist=0x7fffffffd1b0)
at src/gcc/cp/decl.c:10936
10936 if (TREE_CODE (ctype) == UNION_TYPE
(gdb) l
10931
10932 /* The C99 flexible array extension. */
10933 if (!staticp && TREE_CODE (type) == ARRAY_TYPE
10934 && TYPE_DOMAIN (type) == NULL_TREE)
10935 {
10936 if (TREE_CODE (ctype) == UNION_TYPE
10937 || TREE_CODE (ctype) == QUAL_UNION_TYPE)
10938 {
10939 error ("flexible array member in union");
10940 type = error_mark_node;
(gdb) p ctype
$1 = (tree) 0x0
(gdb) call debug_generic_expr (type)
int[<unknown>]
...