>> Will it also be that smart if we do some
>>arithmetics, like `(EMACS_INT)i + 0L' or `(EMACS_INT)i*1L'?
>
>Will try that and see if it is useful to make the warning go away.
No, it changes nothing: the compiler is too clever, but not enough :-)
But, rereading it:
#define FIXNUM_OVERFLOW_P(i) \
((EMACS_INT)(i) > MOST_POSITIVE_FIXNUM \
|| (EMACS_INT)(i) < MOST_NEGATIVE_FIXNUM)
What is the purpose of casting (i) to EMACS_INT? The cast is redundant,
unless (sizeof(i) > sizeof(EMACS_INT)). Or unless (i) is floating point.
In both cases, the cast should not be there, I suppose.
In my case, removing the casts apparently changes nothing, and the
warnings are always there.
_______________________________________________
emacs-pretest-bug mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug