So it's not that the set can't hold more than 32 items...
It's just you can't use *default* for a property if the set's base has more than 32 values.

This is from the Delphi manual (but I'm sure it also applies to FPC):
<quote>
The default and nodefault directives are supported only for ordinal types and for set types, *provided the upper and lower bounds of the set's base type have ordinal values between 0 and 31;*
</quote>
Source: http://docwiki.embarcadero.com/RADStudio/XE6/en/Properties

So the error message is not misleading at all ;)
<quote>
Error: Property can’t have a default value
  Set properties or indexed properties cannot have a default value.
</quote>

Maybe you can skip the default command for property and set the default in Create. (Will that work correctly?)

Werner Pamler wrote:
Recompiling the package LCLBase fails with the error: "Property can't
have a default value". I think this message is misleading and confusing
because the true issue seems to me that the set of TGridOptions now
contains 33 elements. In my understanding, the elements of a set
correspond to the bits of an integer. In a 32-bit OS, therefore, a set
can only contain 32 elements - there is one too many now...

Is this interpretation correct?

--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to