On Friday, September 03, 2010 10:55:01 Thomas Jarosch wrote:
> On Thursday, 2. September 2010 20:58:59 you wrote:
> > > The "ftdi_context" structure was expanded in libftdi-1.x,
> > > IMHO this won't be ABI compatible.
> >
> > yes & no. i see the items were added to the end -- good. and the
> > allocation is always handled by libftdi ? so users will not be doing
> > malloc(struct ftdi_context) but rather ftdi_new() ?
>
> Please look again at ftdi_context, a pointer variable was
> added in the middle of the structure.
i guess i'm looking at an older snapshot that does not have this (and why i
started this thread in the first place ... local snaps suck). there's no
reason why the structure members have to be at the start of a structure, and
for ABI compatibility, adding new members should always be at the end.
i do however see a change in the ftdi_eeprom structure in the main ftdi tree
already (completely ignoring libftdi-1.x) with commit
2ff8b87c6e8ec258b705240b03cc2100b50c16bf. so do people not care about ABI
stability ? is this whole conversation a waste of time if libftdi has never
been compatible ?
> Also I guess most people don't do ftdi_new(), so IMHO it's not ABI
> compatible.
if the new members only get used when someone enables async support, and doing
that requires using new functions, then it is ABI compat
-mike
signature.asc
Description: This is a digitally signed message part.
|