Intern ist der Typ "Extended" entweder 10 Byte (Extended) oder 8 Byte (Double), je nach
OS und Bitigkeit.
Wie groß der Typ nach außen ist, das hängt davon ab, wie, je nach
OS, der Speicher aligned wird und wie der Compiler eingestellt wurde.
Da kann er 8 bis 16 Byte sein, oder auch garnicht existieren.
{$EXTENDEDCOMPATIBILITY ON}
Hmm, OK, das mit Linux hatte ich nicht mitbekommen,
aber da es Apple praktisch nur noch als 64 Bit gibt und man den 32 Bit-iOS-Simulator (Intel) vergessen kann,
bleiben ja nur noch
Win32 und Linux übrig (auf x86 ... nicht auf ARM, falls es das jemals gibt).
Ich frag mich nur, wie Linux das eigentlich machen will? (der Typ OK, aber damit auch "schnell" rechnen .. nicht wie der emulierte Int64/UInt64 im
Win32)
Das war doch ein Ding der FPU und Jene gibt es in der 64 Bit-CPU (Intel/AMD) nicht mehr, sowie nicht im ARM.
Offiziell Ursprünglich (außerhalb der Pascal/Delphi-Welt) war Extended eh nie zum Speichern vorgesehn, sondern vorwiegend nur für Zwischenschritte von Berechnungen.
Aber OK, falls C-Compiler den Typ nicht kennen, dann kann man ihn auch dort teilweise aktivieren.
"long double" (80-bit double extended format) im C++, bzw. double-double damals auf PowerPC.
Nja, wird eh Zeit, dass wir Float128 (quadruple precision) im Delphi bekommen, was uns im
IEEE 754 versprochen wurde.