https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91632
Bug ID: 91632 Summary: [10 Regression] Probably wrong code since r275026 Product: gcc Version: 10.0 Status: UNCONFIRMED Keywords: wrong-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 Target Milestone: --- Since the revision, I see postgres11 teste-suite failing. There's a reduced test-case: $ cat url.c static int __attribute__((noipa)) p_isurlchar(char ch) { if (ch <= 0x20 || ch >= 0x7F) return 0; /* reject characters disallowed by RFC 3986 */ switch (ch) { case '"': case '<': case '>': case '\\': case '^': case '`': case '{': case '|': case '}': return 0; } return 1; } int main() { const char *url = "http://aew.werc.ewr/?ad=qwe&dw"; int r = p_isurlchar (url[0]); __builtin_printf ("is_url: '%c': %d\n", url[0], r); if (r == 0) __builtin_abort (); return 0; } $ gcc /tmp/url.c -O2 -fwrapv && ./a.out is_url: 'h': 0 Aborted (core dumped) $ gcc /tmp/url.c -fwrapv && ./a.out is_url: 'h': 1