<p>Am 13.10.2015 21:51 schrieb "Jonas Maebe" <<a href="mailto:jonas.maebe@elis.ugent.be">jonas.maebe@elis.ugent.be</a>>:<br>
><br>
> On 13/10/15 19:59, Mohsen wrote:<br>
>><br>
>> if (idtoken in [_EXPORT,_EXTERNAL,_WEAKEXTERNAL,_PUBLIC,_CVAR]) then<br>
>><br>
>> ptconst.pas(95,45) Error: range check error in set constructor or<br>
>> duplicate set element<br>
>><br>
>> how to solve it ?<br>
><br>
><br>
> Pascal sets can only contain values/enumerations whose ordinal value is <= 255. There are more than 256 tokens already. If you add new tokens at the start, existing tokens may get an ordinal value > 255, so existing set expressions that previously worked may now fail.<br>
><br>
> The only way to solve that is to remove the items whose ordinal values are > 255 from set expressions and to test for them using the regular '=' operator.</p>
<p>Maybe I should start to work on the support for array constructors and operators once generic functions and dynamic packages are working... :P</p>
<p>Regards,<br>
Sven</p>