[Python-Dev] -Wall output for the Python 2.0c1
Tim Peters
tim_one@email.msn.com
Tue, 10 Oct 2000 18:47:19 -0400
[MAL]
> ceval.c: In function `eval_code2':
> ceval.c:345: warning: `v' might be used uninitialized in this function
> ceval.c:346: warning: `w' might be used uninitialized in this function
> ceval.c:347: warning: `u' might be used uninitialized in this function
> ceval.c:348: warning: `t' might be used uninitialized in this function
[Fred]
> These would be a real tedium to fix, and I'm not convinced the loss
> of clarity is worth it.
I'll take this one. It looks easy to fix, and to my eye doing *everything*
needed for oparg == 5 in a single block (ditto for 4, 3, 2, 1 in their own
blocks) would be much clearer than the current distributed trickiness
(faster, too -- the code now is branching more than computing).
> From looking at the code in the DUP_TOPX code, I'm led to think that
> the compiler just isn't smart enough (it should figure out that oparg
> won't change before the second case statement, and figure it out more
> carefully. I'll bet *that* would remove these warnings and still right
> in all cases.
I agree, except that it wasn't trivial for *me* to decide the compiler was
being stupid. Code that's obviously correct is better than code that's not
obviously wrong.
>> errors.c: In function `PyErr_Format':
>> errors.c:409: warning: value computed is not used
>> errors.c:415: warning: value computed is not used
Thanks!
> Fixed.
Thanks!