Due to the ( lack of ) precision in floating point operations on the computer , the value val3 is nor excactly -600 in both cases.
insert
valx=val3+600;
put valx= 20.15;
in each data step and you will see
valx=0.000000000000000
and
valx=0.000000000000114
and since the format is separated on either side of -600 , the results differ.
At least on mi Intel based computer.
... View more