experimental/memory_resource/resource_adaptor.cc currently FAILs on
32-bit Solaris/x86:

Assertion failed: aligned<max_align_t>(p), file 
/vol/gcc/src/hg/trunk/local/libstdc++-v3/testsuite/experimental/memory_resource/resource_adaptor.cc,
 line 56, function test05

As detailed in the PR, this happens because Solaris <stddef.h> and the
Studio 12.6 compilers know nothing about __float128/_Float128 and malloc
only returns pointers aligned to 8 bytes, not 16 bytes as expected by
gcc/ginclude/stddef.h (max_align_t).

Thus, while checking if Solaris i386 malloc can be changed here, I'm
xfailing the test.

Tested on i386-pc-solaris2.11, amd64-pc-solaris2.11, and
sparc-sun-solaris2.11.

Ok for mainline?

        Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University


2018-03-22  Rainer Orth  <r...@cebitec.uni-bielefeld.de>

        PR libstdc++/77691
        * testsuite/experimental/memory_resource/resource_adaptor.cc:
        xfail execution on 32-bit Solaris/x86.

# HG changeset patch
# Parent  0d630469e1009ecfe592a698e6e006be425518b8
xfail experimental/memory_resource/resource_adaptor.cc on 32-bit Solaris/x86 (PR libstdc++/77691)

diff --git a/libstdc++-v3/testsuite/experimental/memory_resource/resource_adaptor.cc b/libstdc++-v3/testsuite/experimental/memory_resource/resource_adaptor.cc
--- a/libstdc++-v3/testsuite/experimental/memory_resource/resource_adaptor.cc
+++ b/libstdc++-v3/testsuite/experimental/memory_resource/resource_adaptor.cc
@@ -1,4 +1,5 @@
 // { dg-do run { target c++14 } }
+// { dg-xfail-run-if "PR libstdc++/77691" { { i?86-*-solaris2.* x86_64-*-solaris2.* } && ilp32 } }
 
 // Copyright (C) 2016-2018 Free Software Foundation, Inc.
 //

Reply via email to