From a120b7889de5c2127f5dca2559ff0d9999611957 Mon Sep 17 00:00:00 2001 From: Richard Stallman Date: Sat, 12 Sep 1992 19:08:12 +0000 Subject: [PATCH] (yylex): If integer value overflows so highword is negative, it needs unsigned long long. From-SVN: r2111 --- gcc/c-lex.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gcc/c-lex.c b/gcc/c-lex.c index 1587ae6f3d0..629e93b015f 100644 --- a/gcc/c-lex.c +++ b/gcc/c-lex.c @@ -1558,6 +1558,8 @@ yylex () else if (! spec_long_long) ansi_type = long_unsigned_type_node; else if (! spec_unsigned + /* Verify value does not overflow into sign bit. */ + && TREE_INT_CST_HIGH (yylval.ttype) >= 0 && int_fits_type_p (yylval.ttype, long_long_integer_type_node)) ansi_type = long_long_integer_type_node; -- 2.30.2