For single and double there is a nice converter which shows the binary layout:
http://babbage.cs.qc.edu/IEEE-754/Decimal.html Unfortunately there seams to be much less resources about extended... On Fri, Aug 6, 2010 at 4:52 PM, Michael Van Canneyt <mich...@freepascal.org> wrote: > Strange, because tkCurrency exists ? > > A currency is a Int64, which is the currency amount multiplied by 10000. Well, apparently Delphi 6 RTTI thinks that it is a float. Check this code: 471 else if ElmTypeInfo.Kind in [tkFloat] then begin 472 case TypeData.FloatType of 473 ftSingle: Stream.Write(DynArray^, ArrayLength * SizeOf(Single)); 474 ftDouble: Stream.Write(DynArray^, ArrayLength * SizeOf(Double)); 475 ftComp: Stream.Write(DynArray^, ArrayLength * SizeOf(Comp)); 476 ftCurr: Stream.Write(DynArray^, ArrayLength * SizeOf(Currency)); 477 ftExtended: Stream.Write(DynArray^, ArrayLength * SizeOF(Extended)); 478 end; But this code is in another part of the program. For that particular part it simply converts any float type to extended, which was a pretty nasty thing to do. -- Felipe Monteiro de Carvalho _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal