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

Re: C++ symbol mangling difference between arches



Hello,

On 2009 m. June 26 d., Friday 19:43:13 Ben Hutchings wrote:
>
> Would it be possible to implement expansion to a regexp instead of to a
> string that must exactly match?

I think yes if there is no other way (and according to your answers, there 
really isn't). Symbol files have two usage scenarios in my mind:

1) Smart symbol based shlibs management (primary goal).
2) Tracking ABI breakages (side effect).

However, the second has never been entirely true neither for C (e.g. function 
parameter / return type changes cannot be detected) nor C++ (e.g. class size 
changes are not detected while function parameter changes are (sort of)). 
Adding regexps would make ABI tracking even more relaxed.

While apparently, VT can't be implemented differently (except \d+), what about 
size_t etc. then? They all can be implemented as regexps too the most simple 
being 'any character'. However, in my opinion, exact string matching is 
worthwhile to keep whenever possible.

Also, this rises another question if dpkg-gensymbols should handle VT symbols 
automagically since they (typically) can be autodetected (unless they are 
compressed):

^_ZThn?\d+
^_ZTvn?\d+_n?\d+
^_ZTC - AKA construction vtable, but it is rather complex to detect where the 
offset is in this one, e.g.: _ZTCN6KParts15DockMainWindow3E56_NS_8PartBaseE
                                                           ^^

Raphael, should I provide a patch for regexp support + {vt} subst as implicit 
\d+ regexp?

-- 
Modestas Vainius <modestas@vainius.eu>

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: