[esnacc-bugs] [esnacc-dev] ABI-change proposal
Bálint Réczey
balint at balintreczey.hu
Tue Nov 22 16:32:28 UTC 2016
Hi,
2016-11-22 15:36 GMT+01:00 Aaron Conole <aconole at bytheb.org>:
> Sagara Wickramasekara <sagaraw at gmail.com> writes:
>
>> Given we're making some other ABI changes, did you want to put this into 1.9 as well?
>
> So far, we haven't made any ABI changes to 1.9; I'm okay with doing
> that if we also make it clear for downstream maintainers that we will be
> breaking the ABI in the 1.9 release (which isn't scheduled currently,
> but I'm hoping to get a few features tested and integrated by Jul 2017
> for that release).
I have no problem with ABI breakages, just please maintain the SO versions
according to:
https://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
Cheers,
Balint
PS: I'm on dev@ now.
>
>> On Thu, Nov 3, 2016 at 4:01 PM, Aaron Conole <aconole at bytheb.org> wrote:
>>
>> So, for 1.10, I want to propose making a change to the esnacc lists ABI
>> for the C library.
>>
>> Currently, the AsnListNode structure uses a data field as an extension
>> point of the structure. This is used throughout the code as follows:
>>
>> foo = (Foo **)AsnListAppend();
>> *foo = Malloc(sizeof Foo)
>> Foo *RealFoo = *foo;
>> ...
>>
>> My guess is that the original authors ran into alignment issues, and
>> rather than figure out how to tell each compiler that the structure
>> needed to be aligned, they hacked it up and converted over to using
>> pointer-to-pointer and avoid the alignment problems completely.
>>
>> Since this makes for unintuitive code, I think it best to make this ABI
>> incompatible change in the 1.10 release (so, basically, let folks know
>> that it will be deprecated, and make 1.10 a new ABI).
>>
>> Any opposition? Any support? Thoughts?
>>
>> -Aaron
>> _______________________________________________
>> dev mailing list
>> dev at lists.esnacc.org
>> http://mail.esnacc.org/mailman/listinfo/dev
More information about the bugs
mailing list