On Wed, Aug 5, 2009 at 4:46 PM, Bruce Korb <bk...@gnu.org> wrote:

> On Wed, Aug 5, 2009 at 2:32 PM, Joseph Garvin<joseph.h.gar...@gmail.com>
> wrote:
> > I read a description of libtool's versioning here:
> >
> >
> http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
> >
> > What's confusing to me is that this way of handling versioning doesn't
> seem
> > to pay attention to ABI. It mentions bumping numbers for interface
> changes
> > (API) but not for changing size of data structures, editing the contents
> of
> > inline functions, etc.
>
> Those surely sound like rule 4 to me:
> > If any interfaces have been added, removed, or changed since
> > the last update, increment current, and set revision to 0.
>
> changing structures or funtional interfaces (inline functions),
> surely is an interface change.


>From an OOP standpoint private members are hidden implementation details,
and aren't usually considered to be part of the 'interface' (public members
and member functions) to a class, thus my confusion. Different community,
different parlance.

... But that still doesn't make sense. If I only add (don't remove functions
or change existing signatures) to my interfaces, I still bump the current
number according to that rule. But adding to an interface doesn't
necessarily break ABI. So if current-bumps indicate ABI changes, I'm telling
people ABI has broken when it actually hasn't. I don't understand.
_______________________________________________
http://lists.gnu.org/mailman/listinfo/libtool

Reply via email to