diff options
Diffstat (limited to 'tests/conformance/3-expressions/prec_left_ge.zc')
| -rw-r--r-- | tests/conformance/3-expressions/prec_left_ge.zc | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/tests/conformance/3-expressions/prec_left_ge.zc b/tests/conformance/3-expressions/prec_left_ge.zc new file mode 100644 index 0000000..c5b2d73 --- /dev/null +++ b/tests/conformance/3-expressions/prec_left_ge.zc @@ -0,0 +1,43 @@ +// expect: 1/1/0/0/5/5/-3/-3/0/0/0/0/1/1/0/0/0/0/0/0/0/0/1/1/1/1/0/0/0/0/0/0/1/1/1/1/ +// first operator >= followed by each other binary operator; operands chosen so that the two groupings differ +include rt; +void pn(int x) { rt.put_n(x); rt.put_c(10); } +fn main() { + pn(-8 >= 8 || 7); + { int a = -8, b = 8, c = 7; pn(a >= b || c); } + pn(5 >= 12 && 2); + { int a = 5, b = 12, c = 2; pn(a >= b && c); } + pn(6 >= 7 | 5); + { int a = 6, b = 7, c = 5; pn(a >= b | c); } + pn(-1 >= 5 ^ -3); + { int a = -1, b = 5, c = -3; pn(a >= b ^ c); } + pn(9 >= 12 & 8); + { int a = 9, b = 12, c = 8; pn(a >= b & c); } + pn(1 >= 12 == 12); + { int a = 1, b = 12, c = 12; pn(a >= b == c); } + pn(-3 >= -2 != 5); + { int a = -3, b = -2, c = 5; pn(a >= b != c); } + pn(0 >= 1 < 0); + { int a = 0, b = 1, c = 0; pn(a >= b < c); } + pn(5 >= 100 > 5); + { int a = 5, b = 100, c = 5; pn(a >= b > c); } + pn(12 >= 12 <= -1); + { int a = 12, b = 12, c = -1; pn(a >= b <= c); } + pn(1 >= 9 >= 7); + { int a = 1, b = 9, c = 7; pn(a >= b >= c); } + pn(6 >= -1 << 7); + { int a = 6, b = -1, c = 7; pn(a >= b << c); } + pn(6 >= 100 >> 5); + { int a = 6, b = 100, c = 5; pn(a >= b >> c); } + pn(4 >= 1 + 8); + { int a = 4, b = 1, c = 8; pn(a >= b + c); } + pn(-1 >= 9 - -8); + { int a = -1, b = 9, c = -8; pn(a >= b - c); } + pn(7 >= 4 * 5); + { int a = 7, b = 4, c = 5; pn(a >= b * c); } + pn(2 >= 8 / 0); + { int a = 2, b = 8, c = 0; pn(a >= b / c); } + pn(7 >= 9 % 5); + { int a = 7, b = 9, c = 5; pn(a >= b % c); } + return 0; +} |
