| ### Compilation failed: | |
| error: 18: type mismatch: '=' cannot operate on 'atomicUint', 'int' | |
| wgCounterA = 1; | |
| ^^^^^^^^^^^^^^ | |
| error: 19: cannot construct 'atomicUint' | |
| wgCounterA = atomicUint(1); | |
| ^^^^^^^^^^^^^ | |
| error: 21: '+' cannot operate on 'atomicUint' | |
| +wgCounterA; | |
| ^^^^^^^^^^^ | |
| error: 22: '-' cannot operate on 'atomicUint' | |
| -wgCounterA; | |
| ^^^^^^^^^^^ | |
| error: 23: '!' cannot operate on 'atomicUint' | |
| !wgCounterA; | |
| ^^^^^^^^^^^ | |
| error: 24: '~' cannot operate on 'atomicUint' | |
| ~wgCounterA; | |
| ^^^^^^^^^^^ | |
| error: 26: '++' cannot operate on 'atomicUint' | |
| wgCounterA++; | |
| ^^^^^^^^^^^^ | |
| error: 27: '--' cannot operate on 'atomicUint' | |
| wgCounterA--; | |
| ^^^^^^^^^^^^ | |
| error: 28: '++' cannot operate on 'atomicUint' | |
| ++wgCounterA; | |
| ^^^^^^^^^^^^ | |
| error: 29: '--' cannot operate on 'atomicUint' | |
| --wgCounterA; | |
| ^^^^^^^^^^^^ | |
| error: 31: '-' cannot operate on 'atomicUint' | |
| wgCounterA = -wgCounterA; | |
| ^^^^^^^^^^^ | |
| error: 32: '+' cannot operate on 'atomicUint' | |
| wgCounterA = +wgCounterA; | |
| ^^^^^^^^^^^ | |
| error: 33: assignments to opaque type 'atomicUint' are not permitted | |
| wgCounterA = wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 34: type mismatch: '+=' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA += wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 35: type mismatch: '-=' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA -= wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 36: type mismatch: '*=' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA *= wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 37: type mismatch: '/=' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA /= wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 39: type mismatch: '+' cannot operate on 'atomicUint', 'int' | |
| wgCounterA = wgCounterA + 1; | |
| ^^^^^^^^^^^^^^ | |
| error: 40: type mismatch: '-' cannot operate on 'atomicUint', 'int' | |
| wgCounterA = wgCounterA - 1; | |
| ^^^^^^^^^^^^^^ | |
| error: 41: type mismatch: '*' cannot operate on 'atomicUint', 'int' | |
| wgCounterA = wgCounterA * 1; | |
| ^^^^^^^^^^^^^^ | |
| error: 42: type mismatch: '/' cannot operate on 'atomicUint', 'int' | |
| wgCounterA = wgCounterA / 1; | |
| ^^^^^^^^^^^^^^ | |
| error: 43: type mismatch: '+' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA = wgCounterA + wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 44: type mismatch: '-' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA = wgCounterA - wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 45: type mismatch: '*' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA = wgCounterA * wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 46: type mismatch: '/' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA = wgCounterA / wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 48: type mismatch: '==' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA == wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 49: type mismatch: '!=' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA != wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 50: type mismatch: '<' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA < wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 51: type mismatch: '<=' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA <= wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 52: type mismatch: '>' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA > wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 53: type mismatch: '>=' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA >= wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 54: type mismatch: '&&' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA && wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 55: type mismatch: '||' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA || wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 56: type mismatch: '&' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA & wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 57: type mismatch: '|' cannot operate on 'atomicUint', 'atomicUint' | |
| wgCounterA | wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 59: expected 'uint', but found 'atomicUint' | |
| uint a = wgCounterA; | |
| ^^^^^^^^^^ | |
| error: 60: construction of struct type 'S' with atomic member is not allowed | |
| wgStructWithAtomicMember = S(1); | |
| ^^^^ | |
| error: 61: cannot construct 'atomicUint' | |
| wgStructWithAtomicMember = S(atomicUint(1)); | |
| ^^^^^^^^^^^^^ | |
| error: 61: construction of struct type 'S' with atomic member is not allowed | |
| wgStructWithAtomicMember = S(atomicUint(1)); | |
| ^^^^^^^^^^^^^^^^ | |
| error: 62: construction of struct type 'S' with atomic member is not allowed | |
| wgStructWithAtomicMember = S(wgCounterA); | |
| ^^^^^^^^^^^^^ | |
| error: 64: assignments to opaque type 'atomicUint' are not permitted | |
| wgAtomicArray[0] = wgCounterA; | |
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 65: assignments to opaque type 'atomicUint' are not permitted | |
| wgAtomicArray[1] = wgCounterB; | |
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 66: assignments to opaque type 'atomicUint[2]' are not permitted | |
| wgAtomicArray = wgAtomicArray2; | |
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 67: construction of array type 'atomicUint[2]' with atomic member is not allowed | |
| wgAtomicArray = atomicUint[2](wgCounterA, wgCounterB); | |
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 69: assignments to opaque type 'S' are not permitted | |
| wgStructWithAtomicMemberArray[0] = wgStructWithAtomicMember; | |
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
| error: 70: construction of array type 'S[2]' with atomic member is not allowed | |
| wgStructWithAtomicMemberArray = S[2](wgStructWithAtomicMember, | |
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^... | |
| error: 72: construction of struct type 'NestedS' with atomic member is not allowed | |
| wgNestedStructWithAtomicMember = NestedS(wgStructWithAtomicMember); | |
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
| 47 errors |