https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87276
--- Comment #3 from Vincent Lefèvre <vincent-gcc at vinc17 dot net> --- Note: This may yield security issues since basically, this makes integer overflow detection fail. In the testcase, after unsigned long uc; uc = (unsigned long) sum + (unsigned long) ps->e; uc > 9223372036854775807, i.e. uc > LONG_MAX, is regarded as false instead of true.