On 13/10/15 19:59, Mohsen wrote:
if (idtoken in [_EXPORT,_EXTERNAL,_WEAKEXTERNAL,_PUBLIC,_CVAR]) then

ptconst.pas(95,45) Error: range check error in set constructor or
duplicate set element

how to solve it ?

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.

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.


Jonas
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to