re PR libstdc++/63322 (std::atomic<T> where T is not trivially copyable should be disabled.)
PR libstdc++/63322 * include/std/atomic (atomic): Add assertion for trivially copyable. * testsuite/29_atomics/atomic/60695.cc: Adjust line number. From-SVN: r216046
This commit is contained in:
parent
75c3de1e76
commit
bc2da0fc04
@ -3,6 +3,10 @@
|
|||||||
* doc/xml/manual/status_cxx2011.xml: Update.
|
* doc/xml/manual/status_cxx2011.xml: Update.
|
||||||
* doc/html/manual/status.html: Regenerate.
|
* doc/html/manual/status.html: Regenerate.
|
||||||
|
|
||||||
|
PR libstdc++/63322
|
||||||
|
* include/std/atomic (atomic): Add assertion for trivially copyable.
|
||||||
|
* testsuite/29_atomics/atomic/60695.cc: Adjust line number.
|
||||||
|
|
||||||
2014-10-09 Ville Voutilainen <ville.voutilainen@gmail.com>
|
2014-10-09 Ville Voutilainen <ville.voutilainen@gmail.com>
|
||||||
|
|
||||||
PR libstdc++/60132
|
PR libstdc++/60132
|
||||||
|
@ -163,7 +163,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||||||
private:
|
private:
|
||||||
_Tp _M_i;
|
_Tp _M_i;
|
||||||
|
|
||||||
// TODO: static_assert(is_trivially_copyable<_Tp>::value, "");
|
static_assert(__is_trivially_copyable(_Tp),
|
||||||
|
"std::atomic requires a trivially copyable type");
|
||||||
|
|
||||||
static_assert(sizeof(_Tp) > 0,
|
static_assert(sizeof(_Tp) > 0,
|
||||||
"Incomplete or zero-sized types are not supported");
|
"Incomplete or zero-sized types are not supported");
|
||||||
|
@ -27,4 +27,4 @@ struct X {
|
|||||||
char stuff[0]; // GNU extension, type has zero size
|
char stuff[0]; // GNU extension, type has zero size
|
||||||
};
|
};
|
||||||
|
|
||||||
std::atomic<X> a; // { dg-error "not supported" "" { target *-*-* } 168 }
|
std::atomic<X> a; // { dg-error "not supported" "" { target *-*-* } 169 }
|
||||||
|
Loading…
Reference in New Issue
Block a user