Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Mar 2016 15:51:19 -0700
From:      Bryan Drewery <bdrewery@FreeBSD.org>
To:        Dimitry Andric <dim@FreeBSD.org>
Cc:        toolchain@FreeBSD.org
Subject:   Re: CXXSTD=c++11
Message-ID:  <56F46F67.2000807@FreeBSD.org>
In-Reply-To: <56F46E1B.4010605@FreeBSD.org>
References:  <56F46BE0.7080909@FreeBSD.org> <43ABA5F3-60E0-4A29-9698-B345A3DA0A8B@FreeBSD.org> <56F46E1B.4010605@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--fUkEiqtUUV5OhVvxphOgoELubpP5L73W7
Content-Type: multipart/mixed; boundary="XDiIe3wouFImHleieuNSRxWLm09k73Gmw"
From: Bryan Drewery <bdrewery@FreeBSD.org>
To: Dimitry Andric <dim@FreeBSD.org>
Cc: toolchain@FreeBSD.org
Message-ID: <56F46F67.2000807@FreeBSD.org>
Subject: Re: CXXSTD=c++11
References: <56F46BE0.7080909@FreeBSD.org>
 <43ABA5F3-60E0-4A29-9698-B345A3DA0A8B@FreeBSD.org>
 <56F46E1B.4010605@FreeBSD.org>
In-Reply-To: <56F46E1B.4010605@FreeBSD.org>

--XDiIe3wouFImHleieuNSRxWLm09k73Gmw
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: quoted-printable

On 3/24/2016 3:45 PM, Bryan Drewery wrote:
> On 3/24/2016 3:44 PM, Dimitry Andric wrote:
>> On 24 Mar 2016, at 23:36, Bryan Drewery <bdrewery@FreeBSD.org> wrote:
>>>
>>> Is there any problem with forcing -std=3Dc++11 for all CXX/LIB_CXX bu=
ilds
>>> now?  We do this when using an external GCC since it doesn't default =
to
>>> the c++11 standard quite yet.  As far as I understand, we require c++=
11
>>> to build clang/libc++.
>>
>> Yes, but it already passes -std=3Dc++11 in the correct places, as far =
as I
>> know.  E.g. during the clang and libc++ builds.
>>
>>
>>> It seems to be the problem at
>>> https://lists.freebsd.org/pipermail/freebsd-toolchain/2015-October/00=
1757.html
>>> which I've fixed in an upcoming commit to properly pass -std=3Dc++11 =
to
>>> the lib32 build in CXXFLAGS.
>>
>> Hm, is this occuring during the build of libcxxrt, or of libc++?  If i=
t
>> is the former, then it seems that the system headers don't properly
>> declare _Static_assert() in that case.  I have no clue as to why, thou=
gh
>> maybe it's picking something up from gcc's famously "fixed" standard
>> headers?
>>
>=20
> libcxxrt.
>=20
> My fix also includes passing the proper -isystem =3D/usr/include/c++/v1=
 path.
>=20
> I'll try without the -std change.
>=20
>=20

It fails without -std=3Dc++11 (there's more discussion in that link and i=
n
PR 205453).

> /usr/local/bin/powerpc64-portbld-freebsd11.0-g++ -m32 -DCOMPAT_32BIT -m=
cpu=3Dpowerpc  --sysroot=3D/usr/obj/powerpc.powerpc64/root/git/freebsd/li=
b32  -L/usr/obj/powerpc.powerpc64/root/git/freebsd/lib32/usr/lib32 -B/usr=
/obj/powerpc.powerpc64/root/git/freebsd/lib32/usr/lib32 -isystem /usr/obj=
/powerpc.powerpc64/root/git/freebsd/lib32/usr/include -isystem /usr/obj/p=
owerpc.powerpc64/root/git/freebsd/lib32/usr/include/c++/v1  -L/usr/obj/po=
werpc.powerpc64/root/git/freebsd/world32//root/git/freebsd/lib/libc++ -pg=
  -O2 -pipe -I/root/git/freebsd/lib/libcxxrt/../../contrib/libcxxrt -MD -=
MF.depend.guard.po -MTguard.po -fstack-protector-strong -Wno-error=3Dunus=
ed-function -Wno-error=3Denum-compare -Wno-error=3Dlogical-not-parenthese=
s -Wno-error=3Dbool-compare -Wno-error=3Duninitialized -Wno-error=3Darray=
-bounds -Wno-error=3Dclobbered -Wno-error=3Dcast-align -Wno-error=3Dextra=
 -Wno-error=3Dattributes -Wno-error=3Dinline -Wno-error=3Dunused-but-set-=
variable -Wno-error=3Dunused-value -Wno-error=3Dstrict-aliasing -Wno-erro=
r=3Daddre
ss   -c /root/git/freebsd/lib/libcxxrt/../../contrib/libcxxrt/guard.cc -o=
 guard.po
> --- guard.o ---
> /root/git/freebsd/lib/libcxxrt/../../contrib/libcxxrt/guard.cc:104:15: =
error: expected constructor, destructor, or type conversion before '(' to=
ken
>  _Static_assert(sizeof(guard_t) =3D=3D sizeof(uint64_t), "");
>                ^
> --- libelftc_dem_gnu3.So ---
> --- guard.o ---
> *** [guard.o] Error code 1
>=20
> make[4]: stopped in /root/git/freebsd/lib/libcxxrt


--=20
Regards,
Bryan Drewery


--XDiIe3wouFImHleieuNSRxWLm09k73Gmw--

--fUkEiqtUUV5OhVvxphOgoELubpP5L73W7
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQEcBAEBAgAGBQJW9G9oAAoJEDXXcbtuRpfPmUAH/RgGHdtnxR1bGU9nCmtHp0gL
sdSPtgo2WERP+tvDCl1b+7kLcX0q+Vux6RU02a+v6fYH95zsgkY8+jnqwpl5ZmW2
eYSrlQueXX5wwjEfp4gVIuri5hLJXBtX2bCTT5yJ8B00CDu2wVbsDq7EqN7yvtCG
w0pZU9kQhk0eUjVRJ2WCn5YB22o3GUXPOzewc7+AE9PM1YLZ2L4wjSn78cbAvyqz
0zT4k7G+isrfgPL1zZ1m2x4Mmnjl5zRKx6ZnUe7P30bqKOXzHpYbJhUPgntH7riJ
0eHtdpRy7t7QGEXWM70dweS3D/2FnQgDFyTlRLle+ig1NVzSRqF3jzBtw709atY=
=e2KN
-----END PGP SIGNATURE-----

--fUkEiqtUUV5OhVvxphOgoELubpP5L73W7--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?56F46F67.2000807>