Date: Sat, 17 Aug 2013 11:24:41 +0100 From: David Chisnall <theraven@FreeBSD.org> To: "O. Hartmann" <ohartman@zedat.fu-berlin.de> Cc: FreeBSD CURRENT <freebsd-current@FreeBSD.org>, FreeBSD Ports <freebsd-ports@FreeBSD.org> Subject: Re: graphics/blender: math.h: isnan(): error: controlling expression type 'unsigned int' not compatible with any generic association type Message-ID: <779CBD97-A751-4168-BFF0-F984BEE615CE@FreeBSD.org> In-Reply-To: <20130817114818.7d5cd89a@thor.walstatt.dyndns.org> References: <20130817114818.7d5cd89a@thor.walstatt.dyndns.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--Apple-Mail=_87D38729-4DC9-4F37-9803-373BEC528172 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On 17 Aug 2013, at 10:48, "O. Hartmann" <ohartman@zedat.fu-berlin.de> = wrote: > port graphics/blender doesn't compiler neither in CURRENT nor 9.2-PRE > for the moment. On CURRENT (FreeBSD 10.0-CURRENT #4 r254430: Fri Aug = 16 > 23:23:08 CEST 2013 amd64), compilation fails with the belwo shown = error > message - for roughly a month now.=20 >=20 > I think this is dur to some issues of inconsistency/incompatibility of > the math.h/cmath headers regarding the reported c++11 issues. >=20 >=20 > Since port graphics/blender doesn't compile on 9.2 nor does it compile > in CURRENT and the fact that the math.h isn't fixed in the 9.2-RELEASE > as I was told, the port should be marked broken. >=20 >=20 >=20 > [ 55%] Building C object > = source/blender/imbuf/intern/cineon/CMakeFiles/bf_imbuf_cineon.dir/cineon_d= px.c.o > [ 55%] Building C object > = source/blender/imbuf/intern/cineon/CMakeFiles/bf_imbuf_cineon.dir/cineonli= b.c.o = /usr/ports/graphics/blender/work/blender-2.68/source/blender/imbuf/intern/= cineon/cineonlib.c:280:70: > error: controlling expression type 'unsigned int' not compatible with > any generic association type if (cineon->element[i].refLowData =3D=3D > CINEON_UNDEFINED_U32 || isnan(cineon->element[i].refLowData)) > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/math.h:118:19: note: > expanded from macro 'isnan' __fp_type_select(x, __inline_isnanf, > __inline_isnan, __inline_isnanl) ^ /usr/include/math.h:86:49: note: > expanded from macro '__fp_type_select' #define __fp_type_select(x, f, > d, ld) _Generic((x), =20 This looks like a correct error. isnan(unsigned int) is undefined = behaviour in C or C++. Now, we have a hard error instead of doing = something random. This change was made it make it easier to find logic = errors at compile time, and it seems to be doing exactly that here: now = the port fails to build, rather than building and having undefined = behaviour. David --Apple-Mail=_87D38729-4DC9-4F37-9803-373BEC528172 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.18 (Darwin) Comment: GPGTools - http://gpgtools.org iQIcBAEBAgAGBQJSD09pAAoJEKx65DEEsqIdNeIQAMKArevwHyrGvZmMKnaZfqd9 WfZjOgVYpI72uoD/Pk0AGlZ5vgBZebcTfy7pmqwQPGj0oI4WYFsWejZXP7xgAlKZ WKIUIMq1WrZqJZ931lSOFnK32LdMi1SxqTvOuMDudHWslmoHuQAcOSHmwK2qlTX7 zlw+9d5d6sv7ucyRhHryBslmtR5DbtTM/KIBPko5pZDilPHrOqRlzCKLxgvNtiZW 27hrh5Awe17J3QIGyTGHOMjYUsjst6E5PxhtUoAoQT8VLBt9MxIoHoekmnUDYjfX /VrRQEWoSv4djIxPxDFuiw5bHkGxhEnFqr1oN9vBE51WiJLEp8qlal0Hf9cD5kgt kODABGDHgdULliWyw86KWsRMZnwYGxyC302Hpie24pUlgnIL7RhhWz4TQLQv42l5 CGmSkxsXsJqhPGAtVrUn48nEgsPj+Y/u/agwh2SJx5Hh5eP25woqMiVRR0YYS7VP VPPr0/XVrpC4w4cIxpIV2wEwhTynIMUKxRE7qG42/dSo9WNRvvZQmPE5Z3Yqpw1l zT5EdtPwgNrcMPh3c547PQc1I7EDwV3dZjFj92zq8+nS0s9CdA8h883vel6+jsdC 6pet2cemaamySPG1J33nQ+eQLZlGLOTmjuERkZyIXZQrJ7p8I05soDpqsSqgZ2wx XtvEmntaO8mZlB5+zPqt =mUvE -----END PGP SIGNATURE----- --Apple-Mail=_87D38729-4DC9-4F37-9803-373BEC528172--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?779CBD97-A751-4168-BFF0-F984BEE615CE>