.float mem; void main() { float a; // regular binary+store a = 5; print(ftos(a += 1), " = "); print(ftos(a), "\n"); entity e = spawn(); e.mem = 10; print(ftos(e.mem += 1), " = "); print(ftos(e.mem), "\n"); // prefix print(ftos(++a), " = "); print(ftos(a), "\n"); print(ftos(--a), " = "); print(ftos(a), "\n"); print(ftos(++e.mem), " = "); print(ftos(e.mem), "\n"); // suffix print(ftos(a++), " = "); print(ftos(a-1), "\n"); // the CLANG way: a = 3; print(ftos((a++ + a) + a), " = 11\n"); // check if minus translates print(ftos(a--), "\n"); print(ftos(--a), "\n"); // postfix on members print(ftos(e.mem--), " = "); print(ftos(e.mem+1), "\n"); // compounds in general a = 3; print(ftos(a *= 2), " = 6\n"); print(ftos(a /= 2), " = 3\n"); // compounds on vectors vector v; v = '3 4 5'; print(vtos(v *= 2), " = '6 8 10'\n"); print(vtos(v /= 2), " = '3 4 5'\n"); // bit compounds a = 1; print(ftos(a |= 2), " = 3\n"); print(ftos(a &= 6), " = 2\n"); a = 7; print(ftos(a &~= 3), " = 4\n"); }