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.
