[fpc-pascal] TCustomStream still using LongInt and not Int64
Graeme Geldenhuys
mailinglists at geldenhuys.co.uk
Sun Dec 27 17:20:32 CET 2020
Hi,
Is this a bug in FPC 3.2.0 where TCustomStream still uses LongInt in
the Read() method, where all other methods in in the class uses Int64
type?
Here is the FPC code:
TCustomMemoryStream = class(TStream)
private
FMemory: Pointer;
FSize, FPosition: PtrInt;
protected
Function GetSize : Int64; Override;
function GetPosition: Int64; Override;
procedure SetPointer(Ptr: Pointer; ASize: PtrInt);
public
function Read(var Buffer; Count: LongInt): LongInt; override; // <-- Here
function Seek(const Offset: Int64; Origin: TSeekOrigin): Int64; override;
...
end;
As this class extends the TStream class, I guess the issue relates to
TStream too.
eg: Why would you have GetSize(): Int64; or GetPosition: Int64; but when you
read data, it is limited to the Longint type?
Regards,
Graeme
--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/
My public PGP key: http://tinyurl.com/graeme-pgp
More information about the fpc-pascal
mailing list