r186903 - Integers which are too large should be an error.

Eli Friedman eli.friedman at gmail.com
Mon Jul 22 18:09:51 PDT 2013


On Mon, Jul 22, 2013 at 5:50 PM, Richard Smith <richard at metafoo.co.uk> wrote:
> On Mon, Jul 22, 2013 at 5:25 PM, Eli Friedman <eli.friedman at gmail.com>
> wrote:
>>
>> Author: efriedma
>> Date: Mon Jul 22 19:25:18 2013
>> New Revision: 186903
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=186903&view=rev
>> Log:
>> Integers which are too large should be an error.
>
>
> The "too_large_for_signed" part of this doesn't look correct. In C89,
> unsuffixed integers too large to be a long are an unsigned long. In other
> language standards, the same behavior is a GNU extension.

Yes, our behavior in strict C89 is wrong.  That's mostly tangential to
this patch, though; filed http://llvm.org/bugs/show_bug.cgi?id=16678 .

Under C99 rules, yes, gcc technically accepts it by default, but it
emits a warning which can't be turned off... I doubt the difference
matters.

-Eli



More information about the cfe-commits mailing list