bug-readline
[Top][All Lists]
Advanced

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

Re: [Bug-readline] [PATCH] Enable visibility annotations


From: Pedro Alves
Subject: Re: [Bug-readline] [PATCH] Enable visibility annotations
Date: Fri, 22 Apr 2016 15:51:37 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.1

On 04/19/2016 06:45 PM, Chet Ramey wrote:
> On 4/18/16 3:19 AM, Pedro Alves wrote:
> 
>>> I've also fixed an issue in script and added fixed patch which
>>> additionally visualizes _rl_horizontal_scroll_mode (required by trunk gdb).
>>
>> I ran this now and got:
>>
>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>
>> Symbols which may be used and are missing in new libreadline:
>> rl_complete_with_tilde_expansion
>> _rl_mark_modified_lines
> 
> These two correspond to bindable readline variables.  The former retains
> its rl_ prefix for backwards (and historical) compatibility.

I think the visibility patches raise a question that should
be considered:

Does readline still want to keep these historical "rl_" symbols,
even those that we hadn't found any program is using (at
least yet) ?

Because I think that if we hide them with private visibility,
then that effectively is the same thing as removing them
for dynamic links.  However, if we don't remove them, then we
end up with the inconsistency where a link with dynamic
libreadline.so fails, while a link with static libreadline.a succeeds.

It seems to me that readline should either:

 - completely delete old undocumented backwards compatibility symbols,
   or,

 - mark them public.

Leaving them defined, but marked private leads to the dynamic
vs static inconsistency mentioned above.

Thanks,
Pedro Alves




reply via email to

[Prev in Thread] Current Thread [Next in Thread]