As Joerg Wunsch wrote:
As Joerg Wunsch wrote:
The entire pgm structure appears to be garbled after some point:
More datapoints: update.c obviously has a different idea about
struct programmer_t than anyone else:
The confusion arose out of pindefs.h testing for HAVE_STDINT_H, and
then either using uint32_t or unsigned long for pinmask_t, depending
on whether <stdint.h> is supposed to be available or not.
Testing for one of the HAVE_* macros requires to include "ac_cfg.h"
before. Failure to do so resulted in a struct programmer_t with two
different definitions for the pinmask arrays. No deal for 32-bit
systems, but both arrays differed in size for 64-bit systems.
(Shouldn't the fallback type be "unsigned int" anyway, rather than
"unsigned long"?)
Yes, there should be a single, combined libavrdude.h file. ;-)