此单元无法在 XE2 Update 3 中编译,并显示“[DCC Fatal Error] Test.pas(22): F2084 Internal Error: URW1147”
unit Test;
interface
type
TSorter<T> = procedure(var Values: array of T);
TTest = class
public
procedure Sort<T>(const Sorter: TSorter<T>);
end;
implementation
procedure TTest.Sort<T>(const Sorter: TSorter<T>);
begin
end;
end.
我已提交QC报告:QC#103671 .
有人知道解决这个问题的方法吗?
最佳答案
如果将 TSorter 声明替换为 TSorter<T> = procedure(var Values: TArray<T>);
它在 XE 上编译得很好。
关于delphi - 当我声明通用 "array of T"时,我应该如何处理内部错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9429484/