[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Summary of C++ symbols experience

Chow Loong Jin <hyperair@debian.org> writes:
> On 29/01/2012 07:18, Russ Allbery wrote:

>> What I'm seeing (I think; I'm not positive) is that an inline function
>> (generally inlined because it's defined inside the class definition,
>> not due to explicit keywords) appears and disappears from the export
>> list of the library essentially at random with minor changes in the g++
>> version.

> That would be caused by changes in the logic that g++ uses to determine
> whether or not to inline a function that is marked as inline. I believe
> you can effectively just mark the symbols for all inline functions as
> optional in the symbols files.

If there were a tool available to do this, that might resolve many of the
remaining issues here.  But I suspect doing this automatically is Hard.
By the time the library has been generated, there's no real way of knowing
whether the symbol was inline or not.  You'd really have to somehow
generate the symbols tags as a side-effect of the compilation process.
And obviously doing this by hand by manual inspection when there are over
12,000 exported symbols is infeasible.

Russ Allbery (rra@debian.org)               <http://www.eyrie.org/~eagle/>

Reply to: