Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[atomics.types.operations] misuses "underlying type" #2057

Closed
jwakely opened this issue Apr 30, 2018 · 2 comments
Closed

[atomics.types.operations] misuses "underlying type" #2057

jwakely opened this issue Apr 30, 2018 · 2 comments
Assignees

Comments

@jwakely
Copy link
Member

jwakely commented Apr 30, 2018

The note in [atomics.types.operations] p23 says "if the underlying type has ..." but this is not the same meaning of "underlying type" used elsewhere ([basic.fundamental] and [dcl.enum]).

[atomics.types.generic] uses the phrase "the template argument for T", and the nested type value_type is also defined. Either would be better than "the underlying type", but I think the note would be improved by referring to "object representation of the type", possibly even making use of std::has_unique_object_representations.

@jfbastien
Copy link
Contributor

std::has_unique_object_representations is probably the wrong choice given the behavior that's expected for floating-point types. The intent is to discuss the type stored in lieu of T, because SG1 believes that atomic<T> doesn't contain a T.

@jensmaurer
Copy link
Member

This is a note, so we don't have to be super-precise. I just used "object representation" instead of "underlying type", which is sufficiently vague about how the T's are actually stored.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants