On Sun, 16 Nov 2014, Chen Gang wrote: > The maximize 64-bits integer decimal string length excluding NUL is 20 ( > '-9223372036854775808'), so need use 20 instead of 18 for HOST_WIDE_INT. > > 2014-11-16 Chen Gang <gang.chen.5...@gmail.com> > > * c-family/c-cppbuiltin.c (builtin_define_with_int_value): Use > 20 instead of 18 for the maximize 64-bits integer decimal > string length
OK. (Though it's not a good idea to use builtin_define_with_int_value with large arguments, as it won't generate any suffixes for arguments outside the range of target int, and -9223372036854775808 would actually need to be expressed as (-9223372036854775807LL-1). I think it's OK that it doesn't parenthesize negative numbers when outputting them - that the only cases for which the lack of parentheses could affect the parse are invalid for other reasons - though parentheses around negative numbers output might be a good idea anyway to make it obvious the output is OK, and would accord with how some macros such as __*_MIN_EXP__ are output; those values should probably use builtin_define_with_int_value.) -- Joseph S. Myers jos...@codesourcery.com