2012-02-24 9 views
13

To urządzenie nie skompilować w XE2 Update 3 z "[DCC Fatal Error] Test.pas (22): Błąd F2084 Wewnętrznego: URW1147"Co powinienem zrobić z błędem wewnętrznym, gdy zadeklaruję ogólną "tablicę T"?

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. 

I przedstawiły raport QC: QC#103671.

Czy ktoś ma pomysł na obejście tego problemu?

Odpowiedz

15

Jeśli zastąpisz deklarację TSortera wartością TSorter<T> = procedure(var Values: TArray<T>);, kompiluje ona poprawnie na XE.

+1

To obejście dotyczy również XE2. Dzięki! – BofA

Powiązane problemy