[fpc-devel] Gaps in a non-contiguous enum
Michael Van Canneyt
michael at freepascal.org
Tue Aug 16 13:19:28 CEST 2022
On Tue, 16 Aug 2022, Ondrej Pokorny via fpc-devel wrote:
> --- code end
>
> Run it in Delphi and FPC and compare the outputs:
>
> Delphi output:
> PropCount: 0
> Property info is null
>
> FPC output:
> PropCount: 1
> Property name: Fruit
> Property kind: tkEnumeration
>
> As you can see FPC creates a valid PropInfo for the property with valid
> TypeInfo (PI^.PropType) of the kind tkEnumeration! This is definitely wrong.
>
> So the solution is either:
>
> 1.) don't create PropInfo for the Fruit property like Delphi.
> - or -
> 2.) PropType must not be thEnumeration. It should be either tkInteger or
> a new custom value like tkCEnumeration or whatever. Because
> thEnumeration means it has the enumeration TypeInfo with GetEnumName and
> GetEnumValue.
tkInteger or no propinfo at all seems the only correct solution to me, with
slight preference for no propinfo at all.
Michael.
More information about the fpc-devel
mailing list