Explorar o código

fcl-passrc: resolver: test in operator on custom integer sets

git-svn-id: trunk@37369 -
Mattias Gaertner %!s(int64=7) %!d(string=hai) anos
pai
achega
d7f67d3689

+ 1 - 1
packages/fcl-passrc/src/pasresolver.pp

@@ -84,7 +84,7 @@ Works:
   - function high(ordinal): ordinal
   - function pred(ordinal): ordinal
   - function high(ordinal): ordinal
-  - cast integer to enum
+  - cast integer to enum, enum to integer
 - sets - TPasSetType
   - set of char
   - set of integer

+ 9 - 2
packages/fcl-passrc/tests/tcresolver.pas

@@ -2428,7 +2428,11 @@ begin
   '  s13 = s2<=s3;',
   '  s14 = s2>=s3;',
   '  s15 = 1 in s2;',
-  'begin']);
+  'var',
+  '  w: word;',
+  'begin',
+  '  if w in [1..12] then ;',
+  '']);
   ParseProgram;
   CheckResolverUnexpectedHints;
 end;
@@ -3044,7 +3048,10 @@ begin
   '  s13 = [a,b]<=[a..b];',
   '  s14 = [a,b]>=[a..b];',
   '  s15 = a in [a,b];',
-  'begin']);
+  'var',
+  '  Flag: TFlag;',
+  'begin',
+  '  if Flag in [b,c] then ;']);
   ParseProgram;
   CheckResolverUnexpectedHints;
 end;