LONGREAL >= REAL >= LONGINT >= INTEGER >= SHORTINT
| operator | first operand | second operand | result type |
|---|---|---|---|
| + - * | numeric | numeric | smallest numeric type including both operands |
| / | numeric | numeric | smallest real type including both operands |
| + - * / | SET | SET | SET |
| DIV MOD | integer | integer | smallest integer type including both operands |
| OR & ~ | BOOLEAN | BOOLEAN | BOOLEAN |
| = # < <= > >= | numeric CHAR character array, string | numeric CHAR character array, string | BOOLEAN BOOLEAN BOOLEAN |
| = # | BOOLEAN SET NIL, pointer type T0 or T1 procedure type T, NIL | BOOLEAN SET NIL, pointer type T0 or T1 procedure type T, NIL | BOOLEAN BOOLEAN BOOLEAN BOOLEAN |
| IN | integer | SET | BOOLEAN |
| IS | type T0 | type T1 | BOOLEAN |