2012-02-24 7 views
13

la unidad no puede compilar en XE2 Actualización 3 con "[DCC error fatal] Test.pas (22): Error F2084 interna: URW1147"¿Qué debo hacer con un error interno cuando declaro una "matriz de T" genérica?

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. 

he presentado un informe de control de calidad: QC#103671.

¿Alguien tiene una idea sobre la solución para esto?

Respuesta

15

Si reemplaza la declaración TSorter con TSorter<T> = procedure(var Values: TArray<T>); compila bien en XE.

+1

Esta solución también se aplica a XE2. ¡Gracias! – BofA

Cuestiones relacionadas