https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83448
Bug ID: 83448 Summary: ice in get_source_location_for_substring, at input.c:1507 Product: gcc Version: 8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: dcb314 at hotmail dot com Target Milestone: --- Created attachment 42897 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=42897&action=edit C source code The attached C code, when compiled by recent gcc trunk and flag -O2, does this: $ ../results/bin/gcc -c -O2 bug406.c 2>&1 | more during GIMPLE pass: printf-return-value ../mruby-source/mrbgems/mruby-sprintf/src/sprintf.c: In function ‘mrb_str_format ’: ../mruby-source/mrbgems/mruby-sprintf/src/sprintf.c:522:1: internal compiler err or: in get_source_location_for_substring, at input.c:1507 0x1860de8 get_source_location_for_substring(cpp_reader*, string_concat_db*, unsi gned int, cpp_ttype, int, int, int, unsigned int*) ../../trunk/gcc/input.c:1507 0x6678a3 c_get_substring_location(substring_loc const&, unsigned int*) ../../trunk/gcc/c-family/c-common.c:866 0xd79b95 substring_loc::get_location(unsigned int*) const ../../trunk/gcc/substring-locations.c:191 I'll have the usual go at reducing the code and identifying a range of revisions for the error.