On 11/26/14 8:31, Joseph Myers wrote:
> On Wed, 26 Nov 2014, Chen Gang wrote:
>
>> + gcc_assert (wi::fits_to_tree_p (value, char_type_node)
>> + || wi::fits_to_tree_p (value, short_integer_type_node)
>> + || wi::fits_to_tree_p (value, integer_type_node)
>> + || wi::fits_to_tree_p (value, long_integer_type_node)
>> + || wi::fits_to_tree_p (value, long_long_integer_type_node));
>
> It doesn't make sense to check for char or short, since you can't write a
> constant of one of those types. And it doesn't make sense to check for
> int or long when checking for long long, as the ranges of int and long are
> subsets of that of long long. So just check long long here.
>
>> + buf = (char *) alloca (strlen (macro) + vlen + extra);
>> +
>> + sprintf (buf, "%s=%s"HOST_WIDE_INT_PRINT_DEC"%s%s",
>> + macro,
>> + value < 0 ? "(" : "",
>> + value,
>> + wi::fits_to_tree_p (value, char_type_node)
>> + || wi::fits_to_tree_p (value, short_integer_type_node)
>> + || wi::fits_to_tree_p (value, integer_type_node)
>
> No need to check for char or short here.
>
Thank you very much for your patient work, I shall send patch v4 for it
within 2 days.
And I have no any ideas about the attachments in your reply mail. If it
is really related with this thread, please let me know.
Thanks.
--
Chen Gang
Open, share, and attitude like air, water, and life which God blessed