https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64182
--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Note that double-int implementation looks broken too, it doesn't consider uns (negates both anyway if they are "negative"), and it probably doesn't handle the case of too big remainder either.