Title
There are no 'pointers' in §[atomics.lockfree]
Status
c++23
Section
[atomics.lockfree]
Submitter
Billy O'Neal III

Created on 2019-08-03.00:00:00 last changed 13 months ago

Messages

Date: 2020-11-09.20:31:48

Proposed resolution:

This wording is relative to N4830.

  1. Modify [atomics.lockfree] as indicated:

    -2- The functions atomic<T>::is_lock_free, and atomic_is_lock_free ([atomics.types.operations]) indicates whether the object is lock-free. In any given program execution, the result of the lock-free query is the same for all atomic objects shall be consistent for all pointers of the same type.

Date: 2020-11-09.00:00:00

[ 2020-11-09 Approved In November virtual meeting. Status changed: Ready → WP. ]

Date: 2020-02-13.12:32:11

[ 2020-02 Status to Ready on Thursday morning in Prague. ]

Date: 2019-08-03.00:00:00

According to SG1 experts, the requirement in [atomics.lockfree]/2 is intended to require that the answer for is_lock_free() be the same for a given T for a given run of the program. The wording does not achieve that because it's described in terms of 'pointers', but there are no pointers in an atomic<int>.

History
Date User Action Args
2023-11-22 15:47:43adminsetstatus: wp -> c++23
2020-11-09 20:31:48adminsetmessages: + msg11545
2020-11-09 20:31:48adminsetstatus: ready -> wp
2020-02-13 12:32:11adminsetmessages: + msg11058
2020-02-13 12:32:11adminsetstatus: new -> ready
2019-08-06 16:46:59adminsetmessages: + msg10546
2019-08-03 00:00:00admincreate