https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83552
Bug ID: 83552 Summary: [7/8 Regression] ICE in error: invalid argument to gimple call in during GIMPLE pass: strlen Product: gcc Version: unknown Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org CC: jakub at gcc dot gnu.org, prathamesh3492 at gcc dot gnu.org Target Milestone: --- Starting from r we ICE on a valid code snippet: $ cat ice.i char *b; char d[100]; void a (); void c (void) { __builtin_strcat (d, "12345"); if (__builtin_strstr (b, d) == b) a (); } $ ~/bin/gcc/bin/gcc ice.i -c -O2 -fdump-tree-strlen=/dev/stdout -fchecking ;; Function c (c, funcdef_no=0, decl_uid=1895, cgraph_uid=0, symbol_order=2) ice.i: In function ācā: ice.i:5:1: error: invalid argument to gimple call c (void) ^ _5 + 5 # VUSE <.MEM_7> _9 = __builtin_strncmp (b.0_1, &d, _5 + 5); during GIMPLE pass: strlen dump file: /dev/stdout