Title
atomic<floating-point> doesn't have value_type or difference_type
Status
c++20
Section
[atomics.types.float]
Submitter
Tim Song

Created on 2017-12-11.00:00:00 last changed 45 months ago

Messages

Date: 2018-03-18.16:03:30

Proposed resolution:

This wording is relative to N4713.

  1. Edit [atomics.types.float] after p1, class template specialization atomic<floating-point> synopsis, as indicated:

      namespace std {
        template<> struct atomic<floating-point> {
          using value_type = floating-point;
          using difference_type = value_type;
          static constexpr bool is_always_lock_free = implementation-defined;
          […]
        };
      }
    
Date: 2018-03-17.00:00:00

[ 2018-3-17 Adopted in Jacksonville ]

Date: 2018-01-09.00:00:00

[ 2018-01-09 Moved to Tentatively Ready after 6 positive votes on c++std-lib. ]

Date: 2017-12-11.00:00:00

The atomic<floating-point> specialization doesn't have the value_type and difference_type member typedefs, making it unusable with most of the nonmember function templates. This doesn't seem to be the intent.

History
Date User Action Args
2021-02-25 10:48:01adminsetstatus: wp -> c++20
2018-03-18 16:03:30adminsetmessages: + msg9753
2018-03-18 16:03:30adminsetstatus: voting -> wp
2018-02-12 01:13:49adminsetstatus: ready -> voting
2018-01-11 17:31:57adminsetmessages: + msg9603
2018-01-11 17:31:57adminsetstatus: new -> ready
2017-12-12 00:08:34adminsetmessages: + msg9586
2017-12-11 00:00:00admincreate