blob: a2cac30f5e89f0a1698b19d6c747d5e63ec76006 [file] [log] [blame]
-- { dg-do run }
procedure Nan_Max is
function NaN return Long_Float is
Zero : Long_Float := 0.0;
begin
return Zero / Zero;
end;
Z : Long_Float := 1.0;
N : Long_Float := NaN;
begin
if Long_Float'Max (N, Z) /= Z then
raise Program_Error;
end if;
if Long_Float'Max (Z, N) /= Z then
raise Program_Error;
end if;
if Long_Float'Max (NaN, Z) /= Z then
raise Program_Error;
end if;
if Long_Float'Max (Z, NaN) /= Z then
raise Program_Error;
end if;
end;