issue with SET64 constructor for 32-bit CPUs
SET64 constructor does not work for 32-bit CPUs
MODULE TestSet2;
IMPORT KernelLog;
PROCEDURE Do*;
VAR s: SET64;
BEGIN
s := { 7..13 };
Set(s);
s := { 27..53 };
Set(s);
END Do;
PROCEDURE Set*(x: SET64);
VAR first := TRUE: BOOLEAN; bit := {0}: SET64; i: INTEGER;
BEGIN
KernelLog.Char("{");
FOR i := 0 TO MAX(SET64) DO
IF bit * x # {} THEN
IF ~first THEN KernelLog.Char(",") ELSE first := FALSE END;
KernelLog.Int(i,1);
END;
bit := SHL(bit, 1);
END;
KernelLog.Char("}");
END Set;
END TestSet2.
System.Free TestSet2~
TestSet2.Do~