I don’t know why, but the following code upsets Intellisense. See inline notes.
type
SSet = public flags (
sOne,
sTwo,
sThree,
sFour
);
implementation
...
var cs1: CSet := CSet.sOne;
var cs2: CSet := CSet.sOne or CSet.sFour;
// IntelliSense stops working from here on
var ix1: CSet := cs1 and cs2;
// ix1 is not in the list
case ix1 of
// utterly no functionality here
CSet.sOne: Console.Beep();
// no functinality, but compiles and runs as expected
CSet.sTwo..CSet.sFour: MessageBox.Show('hi');
end;