On 7 May 2011 21:44, Stefan Weil <w...@mail.berlios.de> wrote:
> cppcheck report:
> linux-user/signal.c:2057: error: Uninitialized variable: err
>
> cppcheck is correct. Setting err = 0 is a workaround to avoid
> random results and the cppcheck warning.
>
> Function restore_fpu_state is currently unused, so I disabled the code.

(This is in the SPARC-specific part of that file, to save other
people having to dig through for the relevant ifdef; maybe we
should split it up rather than having every target cpu have
its own huge ifdef-guarded section...)

I'm not sure there's much point in putting in the "err=0"
change as well as ifdef'ing out the function, is there? The
code is clearly broken and whoever fixes it will end up
doing something similar then.

Obviously it would be nicer to actually fix the code, since
at the moment it means if your SPARC binary uses floating
point in a signal handler it can trash registers. Luckily
given where qemu takes guest signals it's quite hard to
actually provoke visible problems with this.

I'm surprised gcc doesn't complain about this.

-- PMM

Reply via email to