To: J3 J3/19-211 From: Bill Long Subject: US-23 Part 1, ATOMIC oversight with BOZ constants Date: 2019-August-08 Discussion: ----------- This paper describes Part 1 (of 3) of the BITS proposal, US-23. The bitwise logical operations functions in 16.9 (IAND, IOR, IEOR) allow their INTENT(IN) arguments to be either type INTEGER or a BOZ constant. It was overlooked that the same operations performed by ATOMIC_AND, ATOMIC_FETCH_AND, ATOMIC_OR, ATOMIC_FETCH_OR, ATOMIC_XOR, and ATOMIC_FETCH_XOR do not permit a BOZ constant for the INTENT(IN) VALUE argument. This represents an inconsistency in the F2018 standard. Part 1 of the BITS proposal proposes to fix this. Requirement ----------- Allow BOZ constants as the VALUE arguments to the ATOMIC intrinsics that perform bitwise operations. Sematics and Syntax ------------------- The intrinics ATOMIC_AND, ATOMIC_FETCH_AND, ATOMIC_OR, ATOMIC_FETCH_OR, ATOMIC_XOR, and ATOMIC_FETCH_XOR should permit a BOZ constant for the INTENT(IN) VALUE argument. The value of a VALUE argument that is a BOZ constant is the integer value INT(VALUE, ATOMIC_INT_KIND). Edits to 18-007r1 ----------------- (to be supplied)