Question

This unit fails to compile in XE2 Update 3 with error "Internal Error: SY6315". In XE there is no such problem.

unit Test;

interface

uses
  SysUtils;

var
  Proc: TProc;

implementation

initialization
   Proc := procedure
    var ByteArr: array of Byte;
    begin
      SetLength(ByteArr, 10);
    end;

end.

Does anyone have any experience of this problem?

Update: I have submitted a QC report: QC#102888.

Was it helpful?

Solution

Looks like a compiler bug, this is a workaround using TBytes

   Proc := procedure
    var
     ByteArr: TBytes;
    begin
      SetLength(ByteArr, 10);
    end;
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top