A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://cplusplus.github.io/LWG/issue1472 below:

Issue 1472: Incorrect semantics of atomic_init

This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of NAD Editorial status.

1472. Incorrect semantics of atomic_init

Section: 32.5.8.2 [atomics.types.operations] Status: NAD Editorial Submitter: INCITS Opened: 2010-08-25 Last modified: 2016-01-28

Priority: Not Prioritized

View all other issues in [atomics.types.operations].

View all issues with NAD Editorial status.

Discussion:

Addresses US-171

As of 32.5.8.2 [atomics.types.operations] p. 7:

The atomic_init definition "Non-atomically assigns the value" is not quite correct, as the atomic_init purpose is initialization.

Proposed resolution:

Change 32.5.8.2 [atomics.types.operations] p. 7 as indicated:

void atomic_init(volatile A *object, C desired);
void atomic_init(A *object, C desired);

7 Effects: Non-atomically assigns the value desired to *object Initializes *object with value desired. Concurrent access from another thread, even via an atomic operation, constitutes a data race. [Note: This function should only be applied to objects that have been default constructed. These semantics ensure compatibility with C. — end note]


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4