Skip site navigation (1)Skip section navigation (2)
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>