if ((opcode==Opcode.OR)||
(opcode==Opcode.AND)) {
writer.outputline("int "+lm.getSafeSymbol()+"=maybe;");
- writer.outputline("int maybe=0;");
+ writer.outputline("maybe=0;");
}
rd = VarDescriptor.makeNew("rightop");
} else if (opcode == Opcode.AND) {
writer.outputline("int "+rm.getSafeSymbol()+"=maybe;");
writer.outputline("maybe = (" + ld.getSafeSymbol() + " && " + rm.getSafeSymbol() + ") || (" + rd.getSafeSymbol() + " && " + lm.getSafeSymbol() + ") || (" + lm.getSafeSymbol() + " && " + rm.getSafeSymbol() + ");");
- writer.outputline(dest.getSafeSymbol() + " = " + ld.getSafeSymbol() + " && " + rd.getSafeSymbol() + ";");
+ writer.outputline("int "+dest.getSafeSymbol() + " = " + ld.getSafeSymbol() + " && " + rd.getSafeSymbol() + ";");
} else if (opcode == Opcode.OR) {
writer.outputline("int "+rm.getSafeSymbol()+"=maybe;");
writer.outputline("maybe = (!" + ld.getSafeSymbol() + " && " + rm.getSafeSymbol() + ") || (!" + rd.getSafeSymbol() +
" && " + lm.getSafeSymbol() + ") || (" + lm.getSafeSymbol() + " && " + rm.getSafeSymbol() + ");");
- writer.outputline(dest.getSafeSymbol() + " = " + ld.getSafeSymbol() + " || " + rd.getSafeSymbol() +
+ writer.outputline("int "+dest.getSafeSymbol() + " = " + ld.getSafeSymbol() + " || " + rd.getSafeSymbol() +
";");
} else if (opcode != Opcode.NOT) { /* two operands */
assert rd != null;
[],sizeof(MAP)=1;
[],sizeof(GRID)=1;
-[forall t in TILE],t.TERRAIN>=0 and t.TERRAIN<=13;
+[forall t in TILE],t.TERRAIN>=0 and t.TERRAIN<=12;
[forall c in CITY],sizeof(c.~CITYMAP)=1;
[forall c in CITY],!c.~CITYMAP.TERRAIN=7;