https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98474
--- Comment #4 from Jeff Hurchalla <jeffhurchalla at gmail dot com> --- Thanks for your fix. I built/installed gcc from the latest git sources, and prior to applying your patch, as expected the test cases in this report produced incorrect results. After I applied your patch, all my tests passed. This includes the test case in my first post here, the two godbolt tests I mentioned, and my unit tests for my github library where I first ran into the problem. Since it's not quick for me to understand the patched code, could you let me know if there is a way to avoid the regression with __uint128_t in gcc versions prior to this patch? Right now I'm just making the pessimistic assumption that __uint128_t can't be safely used with gcc versions between 5.1 and the upcoming version with the patch. Is that assumption really necessary?