This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: 2.19 -enable-targets=all one error in m68k-dis.c due to longjmp, easily fixed with volatile
Nick Clifton <nickc@redhat.com> writes:
> Hi Andreas,
>
>>> + static fprintf_ftype save_printer;
>>> + static void (* save_print_address) (bfd_vma, struct disassemble_info *);
>>
>> This is wrong, these variables are never set. The save/restore part
>> should be completely local to match_insn_m68k, no other function should
>> need to touch them.
>
> Good point - that was a hold over from a previous version of the
> patch. Sorry.
Why did you checked in this broken patch? There are more bugs in it:
/* Get a 1 byte signed integer. */
! #define NEXTBYTE(p, val) \
! do \
! { \
! p += 2; \
! if (FETCH_DATA (info, p) < 0) \
FETCH_DATA never returns < 0.
/* Get a double precision float. */
! #define NEXTDOUBLE(val, p) \
! do \
! { \
! p += 8; \
! if (FETCH_DATA (info, p) , 0) \
Also never true.
Andreas.
--
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
PGP key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."