Created on 2010-08-25.00:00:00 last changed 181 months ago
Proposed resolution:
Change [atomics.types.address], class atomic_address synopsis, as indicated:
namespace std {
typedef struct atomic_address {
[…]
void* operator=(const void*) volatile;
void* operator=(const void*);
void* operator++(int) volatile;
void* operator++(int);
void* operator--(int) volatile;
void* operator--(int);
void* operator++() volatile;
void* operator++();
void* operator--() volatile;
void* operator--();
void* operator+=(ptrdiff_t) volatile;
void* operator+=(ptrdiff_t);
void* operator-=(ptrdiff_t) volatile;
void* operator-=(ptrdiff_t);
} atomic_address;
[…]
}
[ Resolved in Batavia by accepting n3193. ]
[ 2010-10-27 Daniel adds: ]
Accepting n3164 would solve this issue by replacing atomic_address by atomic<void*>.
Addresses US-161
atomic_address has operator+= and operator-=, but no operator++ or operator--. The template specialization atomic<Ty*> has all of them.
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2010-11-18 12:46:23 | admin | set | status: nad editorial -> resolved |
| 2010-11-13 02:14:14 | admin | set | messages: + msg5347 |
| 2010-11-13 02:14:14 | admin | set | status: open -> nad editorial |
| 2010-10-27 20:02:48 | admin | set | messages: + msg5165 |
| 2010-10-27 20:02:48 | admin | set | messages: + msg5164 |
| 2010-10-24 03:04:13 | admin | set | messages: + msg4953 |
| 2010-08-25 00:00:00 | admin | create | |