From 618188c6b209aa92bf4f3f00879c19ac5112c6bb Mon Sep 17 00:00:00 2001 From: Kelvin Sherlock Date: Sun, 10 Mar 2019 16:47:18 -0400 Subject: [PATCH] floating point division by 0.0 is well defined and occasionally used to generate +/- infinite values. --- Expression.pas | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/Expression.pas b/Expression.pas index 640ae78..09d2f01 100644 --- a/Expression.pas +++ b/Expression.pas @@ -1199,13 +1199,8 @@ var plusch : rop1 := rop1 + rop2; {+} minusch : rop1 := rop1 - rop2; {-} asteriskch : rop1 := rop1 * rop2; {*} - slashch : begin {/} - if rop2 = 0.0 then begin - Error(109); - rop2 := 1.0; - end; {if} - rop1 := rop1 / rop2; - end; + slashch : rop1 := rop1 / rop2; {/} + otherwise : Error(66); {illegal operation} end; {case} if ekind = intconst then begin