https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77826
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> --- Fallout in GENERIC folding from doing that: FAIL: c-c++-common/fold-divmul-1.c -std=gnu++11 scan-tree-dump-not original "/ \\\\[ex\\\\]" FAIL: g++.dg/cpp1y/constexpr-array4.C -std=c++14 (test for excess errors) FAIL: g++.dg/ipa/devirt-28a.C -std=gnu++11 (test for excess errors) FAIL: g++.dg/gomp/declare-simd-3.C -std=gnu++98 scan-assembler-times _ZGVeN16v ulLUR4__Z2f4iiiRKiS0_S0_: 1 FAIL: g++.dg/torture/pr71448.C -O0 (test for excess errors) FAIL: c-c++-common/fold-divmul-1.c -Wc++-compat scan-tree-dump-not original " /\\\\[ex\\\\]" FAIL: gcc.dg/pr58742-1.c scan-tree-dump cddce1 "return e" so for GENERIC the used types_match () is too strict it seems.