[Bug middle-end/63884] New: ICE: SIGSEGV in is_sec_implicit_index_fn with -fcilkplus and __builtin_sadd_overflow()

zsojka at seznam dot cz gcc-bugzilla@gcc.gnu.org
Sat Nov 15 07:38:00 GMT 2014


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

            Bug ID: 63884
           Summary: ICE: SIGSEGV in is_sec_implicit_index_fn with
                    -fcilkplus and __builtin_sadd_overflow()
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: zsojka at seznam dot cz

Created attachment 33982
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=33982&action=edit
reduced testcase

Compiler output:
$ gcc -fcilkplus testcase.c
==20368== Invalid read of size 2
==20368==    at 0x75E524: is_sec_implicit_index_fn(tree_node*)
(array-notation-common.c:38)
==20368==    by 0x75F5AF: extract_array_notation_exprs(tree_node*, bool,
vec<tree_node*, va_gc, vl_embed>**) (array-notation-common.c:364)
==20368==    by 0x75F2D5: extract_array_notation_exprs(tree_node*, bool,
vec<tree_node*, va_gc, vl_embed>**) (array-notation-common.c:379)
==20368==    by 0x75F2D5: extract_array_notation_exprs(tree_node*, bool,
vec<tree_node*, va_gc, vl_embed>**) (array-notation-common.c:379)
==20368==    by 0x75F2D5: extract_array_notation_exprs(tree_node*, bool,
vec<tree_node*, va_gc, vl_embed>**) (array-notation-common.c:379)
==20368==    by 0x75F2D5: extract_array_notation_exprs(tree_node*, bool,
vec<tree_node*, va_gc, vl_embed>**) (array-notation-common.c:379)
==20368==    by 0x75F2D5: extract_array_notation_exprs(tree_node*, bool,
vec<tree_node*, va_gc, vl_embed>**) (array-notation-common.c:379)
==20368==    by 0x7601CA: contains_array_notation_expr(tree_node*)
(array-notation-common.c:550)
==20368==    by 0x6B0B67: c_finish_return(unsigned int, tree_node*, tree_node*)
(c-typeck.c:9209)
==20368==    by 0x6EEE9F: c_parser_statement_after_labels(c_parser*)
(c-parser.c:4999)
==20368==    by 0x6EFC8F: c_parser_compound_statement_nostart(c_parser*)
(c-parser.c:4676)
==20368==    by 0x6F02DE: c_parser_compound_statement(c_parser*)
(c-parser.c:4513)
==20368==  Address 0x0 is not stack'd, malloc'd or (recently) free'd
==20368== 
testcase.c: In function 'foo':
testcase.c:5:3: internal compiler error: Segmentation fault
   return __builtin_sadd_overflow (x, y, &r);
   ^
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.

Tested revisions:
r217536 - ICE
4_9 r216937 - doesn't know __builtin_sadd_overflow()



More information about the Gcc-bugs mailing list