https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104356
--- Comment #11 from Eric Botcazou <ebotcazou at gcc dot gnu.org> --- > So what does Ada do on targets like powerpc that do not raise an exception? > From what I can see, 1 / 0 yields 0 there. It generates an explicit check for division-by-zero in the general case (remove the pragma Suppress (All_Checks) and you'll see it) but we do not rely on it everywhere, only where system.ads contains: Backend_Divide_Checks : constant Boolean := False; In other words, when Backend_Divide_Checks is set to True, we need the divide and it needs to trap (and pragma Suppress (All_Checks) emulates that, but I certainly need to add a dg-skip for PowerPC here).