mirror of
https://github.com/dlang/dmd.git
synced 2025-04-26 21:21:48 +03:00
79 lines
4.4 KiB
D
79 lines
4.4 KiB
D
// REQUIRED_ARGS: -de
|
|
/*
|
|
TEST_OUTPUT:
|
|
---
|
|
fail_compilation/diag3672.d(8): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(8): Use `core.atomic.atomicOp!"+="(x, 1)` instead
|
|
fail_compilation/diag3672.d(9): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(9): Use `core.atomic.atomicOp!"+="(x, 1)` instead
|
|
fail_compilation/diag3672.d(10): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(10): Use `core.atomic.atomicOp!"-="(x, 1)` instead
|
|
fail_compilation/diag3672.d(11): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(11): Use `core.atomic.atomicOp!"-="(x, 1)` instead
|
|
fail_compilation/diag3672.d(12): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(12): Use `core.atomic.atomicOp!"+="(x, 1)` instead
|
|
fail_compilation/diag3672.d(13): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(13): Use `core.atomic.atomicOp!"+="(x, 2)` instead
|
|
fail_compilation/diag3672.d(14): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(14): Use `core.atomic.atomicOp!"-="(x, 3)` instead
|
|
fail_compilation/diag3672.d(15): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(15): Use `core.atomic.atomicOp!"|="(x, y)` instead
|
|
fail_compilation/diag3672.d(16): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(16): Use `core.atomic.atomicOp!"*="(x, y)` instead
|
|
fail_compilation/diag3672.d(17): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(17): Use `core.atomic.atomicOp!"/="(x, y)` instead
|
|
fail_compilation/diag3672.d(18): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(18): Use `core.atomic.atomicOp!"%="(x, y)` instead
|
|
fail_compilation/diag3672.d(19): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(19): Use `core.atomic.atomicOp!"&="(x, y)` instead
|
|
fail_compilation/diag3672.d(20): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(20): Use `core.atomic.atomicOp!"^="(x, y)` instead
|
|
fail_compilation/diag3672.d(21): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(21): Use `core.atomic.atomicOp!"<<="(x, y)` instead
|
|
fail_compilation/diag3672.d(22): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(22): Use `core.atomic.atomicOp!">>="(x, y)` instead
|
|
fail_compilation/diag3672.d(23): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(23): Use `core.atomic.atomicOp!">>>="(x, y)` instead
|
|
fail_compilation/diag3672.d(24): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(24): Use `core.atomic.atomicOp!"^^="(x, y)` instead
|
|
fail_compilation/diag3672.d(25): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(25): Use `core.atomic.atomicOp!"+="(ptr, 1)` instead
|
|
fail_compilation/diag3672.d(26): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(26): Use `core.atomic.atomicOp!"+="(ptr, 1)` instead
|
|
fail_compilation/diag3672.d(27): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(27): Use `core.atomic.atomicOp!"-="(ptr, 1)` instead
|
|
fail_compilation/diag3672.d(28): Error: read-modify-write operations are not allowed for `shared` variables
|
|
fail_compilation/diag3672.d(28): Use `core.atomic.atomicOp!"-="(ptr, 1)` instead
|
|
---
|
|
*/
|
|
|
|
#line 1
|
|
shared int x;
|
|
shared int y;
|
|
shared int* ptr;
|
|
shared static this() { ptr = new int; } // silence null-dereference errors
|
|
|
|
void main()
|
|
{
|
|
++x;
|
|
x++;
|
|
--x;
|
|
x--;
|
|
x += 1;
|
|
x += 2;
|
|
x -= 3;
|
|
x |= y;
|
|
x *= y;
|
|
x /= y;
|
|
x %= y;
|
|
x &= y;
|
|
x ^= y;
|
|
x <<= y;
|
|
x >>= y;
|
|
x >>>= y;
|
|
x ^^= y;
|
|
++ptr;
|
|
ptr++;
|
|
--ptr;
|
|
ptr--;
|
|
}
|