Date: Sat, 27 Jan 2018 23:45:10 +0100 From: =?UTF-8?Q?Fernando_Apestegu=C3=ADa?= <fernando.apesteguia@gmail.com> To: Dimitry Andric <dim@freebsd.org> Cc: FreeBSD Hackers <freebsd-hackers@freebsd.org> Subject: Re: cad/stepccode fails on -CURRENT since clang-6.0.0 was imported Message-ID: <CAGwOe2aKyitCVgAPbGLTCK30jjHgU7A03kAuaHgHZzxEEiJSNA@mail.gmail.com> In-Reply-To: <B365AAB9-BDD5-44BC-BA1B-66AC94FCFA94@FreeBSD.org> References: <CAGwOe2ZFFTVDWqjM4frMmeYQFt75QCS6J48UvRju%2BLzJ-Ck6Vw@mail.gmail.com> <B365AAB9-BDD5-44BC-BA1B-66AC94FCFA94@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
El 27 ene. 2018 22:41, "Dimitry Andric" <dim@freebsd.org> escribi=C3=B3: On 27 Jan 2018, at 18:42, Fernando Apestegu=C3=ADa <fernando.apesteguia@gma= il.com> wrote: > > Since clang-6.0.0 was imported in -CURRENT > (https://svnweb.freebsd.org/base/head/usr.bin/clang/llvm-cov/?view=3Dlog)= , > cad/stepcode fails to build. It built fine in -CURRENT with > clang-5.0.0 on both i386 and amd64. ... > /wrkdirs/usr/ports/cad/stepcode/work/stepcode-0.8/ src/base/judy/src/judyL2Array.h:169:28: > error: assigning to 'const std::__1::vector<unsigned long long, > std::__1::allocator<unsigned long long> > *' from incompatible type > 'unsigned long long' > kv.value =3D ( JudyValue ) 0; > ^~~~~~~~~~~~~~~ Like gcc 6 and higher, clang 6 now defaults to -std=3Dgnu++14, and from C++11 onwards, you must use 'nullptr' if you mean a null pointer, not the integer 0. You can either force the port to be compiled with -std=3Dgnu++98 (by adding USE_CXXSTD=3Dgnu++98 to the port Makefile), or change the two instances where these assignments are being done, e.g.: --- src/base/judy/src/judyL2Array.h.orig 2014-12-26 20:12:05 UTC +++ src/base/judy/src/judyL2Array.h @@ -166,7 +166,7 @@ class judyL2Array { kv.value =3D *_lastSlot; _success =3D true; } else { - kv.value =3D ( JudyValue ) 0; + kv.value =3D nullptr; _success =3D false; } kv.key =3D _buff[0]; --- src/base/judy/src/judyS2Array.h.orig 2014-12-26 20:12:05 UTC +++ src/base/judy/src/judyS2Array.h @@ -191,7 +191,7 @@ class judyS2Array { kv.value =3D *_lastSlot; _success =3D true; } else { - kv.value =3D ( JudyValue ) 0; + kv.value =3D nullptr; _success =3D false; } kv.key =3D _buff; -Dimitry I will try the later and send the patch upstream. Thanks!
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGwOe2aKyitCVgAPbGLTCK30jjHgU7A03kAuaHgHZzxEEiJSNA>