[fpc-pascal] Local Type T and generics
Sven Barth
pascaldragon at googlemail.com
Tue Jan 3 22:28:44 CET 2023
Am 31.12.2022 um 14:34 schrieb Vojtěch Čihák via fpc-pascal:
> Hi,
>
> I have local type TTempItem, i.e. declared inside method of a generic class.
> When I write:
> type
> TTempItem = record
> Item: T;
> Empty: Boolean;
> end;
> I got: Identifier not found "T".
>
> When I write:
> type
> TTempItem = record
> Item: TBaseGList.T; //name of the class
> Empty: Boolean;
> end;
> I got: Generics without specialization cannot be used as a type for a variable
>
> And finally
> type TLocalT = T;
> TTempItem = record
> Item: TLocalT;
> Empty: Boolean;
> end;
> ^^^ this works.
>
> type TLocalT = TBaseGList.T;
> TTempItem = record
> Item: TLocalT;
> Empty: Boolean;
> end;
> ^^^ work too.
>
> Is this intended? Or known bug?
It's a bug. Please report with a full example.
Regards,
Sven
More information about the fpc-pascal
mailing list