[gcc r13-5633] libstdc++ testsuite: Correct S0 in std/time/hh_mm_ss/1.cc

Hans-Peter Nilsson hp@gcc.gnu.org
Wed Feb 1 16:58:59 GMT 2023


https://gcc.gnu.org/g:a939dd835798efd40b78f7c0070177616e3f36d3

commit r13-5633-ga939dd835798efd40b78f7c0070177616e3f36d3
Author: Hans-Peter Nilsson <hp@axis.com>
Date:   Wed Feb 1 14:56:47 2023 +0100

    libstdc++ testsuite: Correct S0 in std/time/hh_mm_ss/1.cc
    
    For targets where the ABI mandates structure layout that has
    no padding, like cris-elf, this test started failing when
    introduced as an add-on to the existing 1.cc, thereby
    effectively causing a regression in testsuite results.
    Adding an empty structure to S0, corresponds better to the
    layout of hh_mm_ss<seconds>.
    
            PR testsuite/108632
            * testsuite/std/time/hh_mm_ss/1.cc (size): Add empty
            struct at end of S0.

Diff:
---
 libstdc++-v3/testsuite/std/time/hh_mm_ss/1.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libstdc++-v3/testsuite/std/time/hh_mm_ss/1.cc b/libstdc++-v3/testsuite/std/time/hh_mm_ss/1.cc
index d97a9057f47..f8a3e115af3 100644
--- a/libstdc++-v3/testsuite/std/time/hh_mm_ss/1.cc
+++ b/libstdc++-v3/testsuite/std/time/hh_mm_ss/1.cc
@@ -103,7 +103,7 @@ size()
 {
   using namespace std::chrono;
 
-  struct S0 { long long h; char m; char s; bool neg; };
+  struct S0 { long long h; char m; char s; bool neg; struct { } empty; };
   static_assert(sizeof(hh_mm_ss<seconds>) == sizeof(S0));
   struct S1 { long long h; char m; char s; bool neg; char ss; };
   static_assert(sizeof(hh_mm_ss<duration<int, std::centi>>) == sizeof(S1));


More information about the Libstdc++-cvs mailing list