Hi,
On 08/29/2013 10:11 AM, Jan Hubicka wrote:
Paolo,
there seems to be one extra issue about this patch. It causes quite a twist in
libstdc++ exported symbols.
It is purpose of the patch to remove those that are going to be generated in
user programs, too.
I am however bit confused about bad array. Perhaps it is an optimization
difference dragging it in?
I'm also confused because your patch isn't already in (at least I can't
find such a ChangeLog in svn) and what you attached, as long as
bad_array_* is concerned is just what we currently have, before the
patch. Check point: 21 added symbols.
In general, of course, inlining alone can make a difference, if for
example you inline less and a pattern in the linker map isn't tight
enough some symbols can become inadvertently exported.
*But*, outside bad_array* I can see a lot of SUBTRACTED, those would be
very bad regressions of course. check_abi cannot pass.
In the past, when we (library people) had special issues with
versioning, like we had to patch a mistake we made, Jakub promptly
helped, I would recommend referring to him too, if you are seeing
something weird, but the general rule as far as testing is concerned is
very simple: *never* ignore check_abi failures, make sure additional
symbols are exported only at the current ABI version, never add symbols
at older versions, never remove symbols.
Paolo.