https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79242
Alexey Neyman <stilor at att dot net> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |stilor at att dot net --- Comment #4 from Alexey Neyman <stilor at att dot net> --- Seeing this issue with a test case as simple as: int reallocarray(unsigned __int20 a, unsigned __int20 b) { return 0xfffffUL / a < b; } This is a regression in GCC7/GCC8, GCC6 compiles it successfully. Started with the following commit: Author: amonakov <amonakov@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Mon May 30 14:37:02 2016 +0000 match.pd: optimize unsigned mul overflow check gcc/ 2016-05-28 Alexander Monakov <amona...@ispras.ru> Marc Glisse <marc.gli...@inria.fr> PR tree-optimization/71289 * match.pd (-1 / B < A, A > -1 / B): New transformations. gcc/testsuite/ 2016-05-28 Alexander Monakov <amona...@ispras.ru> PR tree-optimization/71289 * gcc.dg/pr71289.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@236882 138bc75d-0d04-0410-961f-82ee72b054a4