Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 Sep 2014 07:50:56 +0200
From:      Dimitry Andric <dim@FreeBSD.org>
To:        Rui Paulo <rpaulo@me.com>
Cc:        freebsd-toolchain@freebsd.org, Steve Kargl <sgk@troutmask.apl.washington.edu>
Subject:   Re: Is this a compiler bug?
Message-ID:  <8B883BB9-8A59-4197-A69D-210229F8EA86@FreeBSD.org>
In-Reply-To: <2EB3354D-0F65-4A79-A378-7F397911284A@me.com>
References:  <20140922011946.GA4317@troutmask.apl.washington.edu> <670269FD-F75F-4044-8F3C-0260F58A70E2@me.com> <20140922014853.GA4469@troutmask.apl.washington.edu> <2EB3354D-0F65-4A79-A378-7F397911284A@me.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--Apple-Mail=_F81B6876-05B0-4F20-A886-279FA219CE07
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

On 22 Sep 2014, at 04:20, Rui Paulo <rpaulo@me.com> wrote:
> On Sep 21, 2014, at 18:48, Steve Kargl =
<sgk@troutmask.apl.washington.edu> wrote:
>> On Sun, Sep 21, 2014 at 06:38:48PM -0700, Rui Paulo wrote:
>>> On Sep 21, 2014, at 18:19, Steve Kargl =
<sgk@troutmask.apl.washington.edu> wrote:
>>>>=20
>>>> #include <stdio.h>
>>>> #include <stdint.h>
>>>>=20
>>>> int
>>>> main(void)
>>>> {
>>>> 	uint16_t i;
>>>> 	i =3D 0x3ff0+63; printf("%x\n", i);
>>>> 	i =3D 0x3ff1+63; printf("%x\n", i);
>>>> 	i =3D 0x3ff2+63; printf("%x\n", i);
>>>> 	i =3D 0x3ff3+63; printf("%x\n", i);
>>>> 	i =3D 0x3ff4+63; printf("%x\n", i);
>>>> 	i =3D 0x3ff4+63; printf("%x\n", i);
>>>> 	i =3D 0x3ff6+63; printf("%x\n", i);
>>>> 	i =3D 0x3ff7+63; printf("%x\n", i);
>>>> 	i =3D 0x3ff8+63; printf("%x\n", i);
>>>> 	i =3D 0x3ff9+63; printf("%x\n", i);
>>>> 	i =3D 0x3ffa+63; printf("%x\n", i);
>>>> 	i =3D 0x3ffb+63; printf("%x\n", i);
>>>> 	i =3D 0x3ffc+63; printf("%x\n", i);
>>>> 	i =3D 0x3ffd+63; printf("%x\n", i);
>>>> 	i =3D 0x3ffe+63; printf("%x\n", i);
>>>> 	i =3D 0x3fff+63; printf("%x\n", i);
>>>> 	return 0;
>>>> }
>>>=20
>>> Looks like it.  Please file a bug report with LLVM.
>>>=20
>>=20
>> Unfortunately, llvm requires an account to report bugs.
>=20
> I think I know what's happening:  "e" is being parsed as scientific =
notation.

Yes, this is an unfortunate side effect of hexadecimal float notation
(either in C99, or as a gcc extension [1]).

-Dimitry

[1] https://gcc.gnu.org/onlinedocs/gcc/Hex-Floats.html


--Apple-Mail=_F81B6876-05B0-4F20-A886-279FA219CE07
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.22 (Darwin)

iEYEARECAAYFAlQfuMsACgkQsF6jCi4glqOC5QCeL64bAJ76XcUVZPm3zn2GplKj
rz0Anir6ua7NijYzURLGn4ooOLLrxpEJ
=oDxV
-----END PGP SIGNATURE-----

--Apple-Mail=_F81B6876-05B0-4F20-A886-279FA219CE07--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8B883BB9-8A59-4197-A69D-210229F8EA86>