<div style='font-family:arial; font-size:13px;'><div>Jorg,</div><div><br></div><div>Thanks for the suggestion. Unfortunately the output isn't as expected; only 31 was printed. I'll contact the author about the issue.</div><div>cheers,</div><div>Joe<br></div><br><div dir="auto">March 20, 2022 6:35:33 PM CET Joerg <joerg.straube@iaeth.ch> wrote:<blockquote type="cite" cite="<B5FF7BA0-BB90-4CFB-903C-33C9B87567F7@iaeth.ch>"><div dir="ltr">Joe<div><br></div><div>Most probably the compiler itself is not compiled with --c-int-type=long. The difference between the first and the second are the set constants.</div><div><br></div><div>To check my assumption try:</div><div><blockquote type="cite" style="color: rgb(0, 0, 0); -webkit-text-size-adjust: auto;"><div dir="ltr"><div style="font-family: arial; font-size: 13px;">MODULE testsets;<br>IMPORT Out;<br>VAR<br> i : INTEGER;<br> x,y,z : SET;<br>BEGIN<br> x := {}; INCL(x, 31); INCL(x, 32); INCL(x, 33);<br> y := {}; INCL(y, 33); INCL(y, 34); INCL(y, 35};<br> z := x - y; <br> FOR i := 31 TO 35 DO<br> IF i IN z THEN <br> Out.Int(i,4) <br> END<br> END; <br> Out.Ln<br>END testsets.</div></div></blockquote><br><div dir="ltr">If this solved the output and you have access to the source, you could try to re-compile the compiler with the long flag turned on.</div><div dir="ltr"><br></div><div dir="ltr">br<br><div>Jörg</div><div><br></div></div></div></div><pre style="font-size:13px;">--<br>Oberon@lists.inf.ethz.ch mailing list for ETH Oberon and related systems<br><a href="https://lists.inf.ethz.ch/mailman/listinfo/oberon" target="_blank">https://lists.inf.ethz.ch/mailman/listinfo/oberon</a><br></pre></blockquote></div></div>
--
Sent with https://mailfence.com
Secure and private email