TMemoryStream cannot save stream size 3Gb
In the current dev version, in classesh.inc, we have
TStream = class(TObject) ... public function Read(var Buffer; Count: Longint): Longint; virtual; overload; function Write(const Buffer; Count: Longint): Longint; virtual; overload; procedure ReadBuffer(var Buffer; Count: Longint); procedure WriteBuffer(const Buffer; Count: Longint);
You see that WriteBuffer has Longint, so it cannot save stream size of 3Gb. WriteBuffer calls this code:
function TMemoryStream.Write(const Buffer; Count: LongInt): LongInt; Var NewPos : PtrInt; begin ... end;
Demo attached. You will get zero-sized file on Ubuntu x64.
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information