https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124124
--- Comment #19 from Tomasz KamiĆski <tkaminsk at gcc dot gnu.org> ---
I think the test do not need to use 64B type for this types, as we care only
about
having padding. The following should achieve that:
diff --git a/libstdc++-v3/testsuite/29_atomics/atomic/cons/zero_padding.cc
b/libstdc++-v3/testsuite/29_atomics/atomic/cons/zero_padding.cc
index f85ac4859ec..04076e57a60 100644
--- a/libstdc++-v3/testsuite/29_atomics/atomic/cons/zero_padding.cc
+++ b/libstdc++-v3/testsuite/29_atomics/atomic/cons/zero_padding.cc
@@ -6,12 +6,12 @@
#include <cstring>
#include <testsuite_hooks.h>
-struct TailPadding { int i; char c; };
+struct TailPadding { short i; char c; };
TailPadding ztail{1, 2}; // zeroed-padding
constexpr std::atomic<TailPadding> ctail(TailPadding{1,2});
std::atomic<TailPadding> gtail(TailPadding{1,2});
-struct MidPadding { char c; int x; };
+struct MidPadding { char c; short x; };
MidPadding zmid{1, 2}; // zeroed-padding
constexpr std::atomic<MidPadding> cmid(MidPadding{1,2});
std::atomic<MidPadding> gmid(MidPadding{1,2});
@@ -30,7 +30,7 @@ struct Ctor
{}
char c;
- int i;
+ short i;
};