From 1736a71b71221df7c81b0d3da25e774f3c4005d2 Mon Sep 17 00:00:00 2001 From: Thomas Preud'homme Date: Wed, 14 Mar 2012 15:47:42 +0100 Subject: [PATCH] Consider long int constant as 64 bits on x86-64 Quick and dirty hack to consider long int constant (as in 1UL or 1L) as 64 bits integer on x86-64 non Windows systems. --- tccpp.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tccpp.c b/tccpp.c index ff478388..d1043e0d 100644 --- a/tccpp.c +++ b/tccpp.c @@ -2028,12 +2028,16 @@ static void parse_number(const char *p) if (lcount >= 2) tcc_error("three 'l's in integer constant"); lcount++; +#if !defined TCC_TARGET_X86_64 || defined TCC_TARGET_PE if (lcount == 2) { +#endif if (tok == TOK_CINT) tok = TOK_CLLONG; else if (tok == TOK_CUINT) tok = TOK_CULLONG; +#if !defined TCC_TARGET_X86_64 || defined TCC_TARGET_PE } +#endif ch = *p++; } else if (t == 'U') { if (ucount >= 1) -- 2.11.4.GIT