According to Sven Hilscher:
["**" problem]
Put in what you want. The result is right for Real, but for __long__ Real it's everytime the result = 1.0.
I get other results, too, but not the correct one.
I think the conversion of the exponent from Real to __long__ Real does'nt work:
Probably. At the moment, the runtime library does not support __modified__ types. It was simply luck that your program did not crash on the "writeln".
To do anything besides plain addition, multiplication, ... with __long__ Reals, you have to cast them to Real at the moment. We are working on it, but this does not have the highest priority for me: On the 80x87, all calculations are done with __long__ Reals anyway, and you only lose precision when writing such a Real to memory, for example to do a "**" or a "writeln".
For the moment I suggest to live with plain Reals.
Hope this helps,
Peter
Dipl.-Phys. Peter Gerwinski, Essen, Germany, free physicist and programmer peter.gerwinski@uni-essen.de - http://home.pages.de/~peter.gerwinski/ [970201] maintainer GNU Pascal - http://home.pages.de/~gnu-pascal/ [970125]