{: test that exp(ln(x)*y) causes a fatal error
   if x is zero and y is negative }

program d08i( output );

var
   x : real;
   y : real;

begin {d08i}

   x := 0;
   y := 1;

   y := -1;
   writeln( 'checking 0 ** -1, expecting to generate a fatal error' );
   writeln('exp(ln(', x:1:2, ')*', y:1:2, ') is ', exp(ln(x)*y)); {!!! exp overflows}

   writeln( 'fails: exp(ln(x)*y) 0 ** -1 error not detected' );
end. { d08i }

