Skip to content

Internal error 99080501 using "absolute" for an "out" parameter

Summary

Fatal: Internal error 99080501 when saying "array of Int64 absolute Unsigned" where "Unsigned" is a parameter.

System Information

Linux, x64. FPC trunk from last November.

Steps to reproduce

{$MODE OBJFPC}  
{$MODESWITCH ADVANCEDRECORDS+}
program test;

procedure Resolve(out Unsigned: array of QWord);
var
   Signed: array of Int64 absolute Unsigned;
begin
   SetLength(Signed, 0);
end;

begin
end.

What is the current bug behavior?

test.pas(9,4) Fatal: Internal error 99080501
Fatal: Compilation aborted

What is the expected (correct) behavior?

Code should compile and run without issue.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information