[PATCH/RFA] Internationalize ctype functionality

Antony King antony.king@st.com
Tue Jun 22 14:03:00 GMT 2010


In the particular instance where this compatibility issue occurred then
your suggestion of them rebuilding the library is OK (and will be done).
However we have a commitment to our customers to retain binary
compatibility (where feasible); this is particularly important in the
case of 3rd party suppliers where rebuilding a library may take time to
arrange and also incur a financial penalty :-(.

In this light, I think I will submit this change as the attached patch
request with the guards you suggest.

Cheers,

Antony.

On 21/06/2010 09:37, Corinna Vinschen wrote:
> On Jun 18 14:39, Antony King wrote:
>> Hi,
>>
>> I have a customer complaining that some static libraries (supplied by a
>> 3rd party) that had been built using the headers from an older version
>> of newlib (1.16.0) no longer link with the latest version of newlib
>> (1.18.0) due to the deletion of the __ctype_ptr variable from ctype_.c
>> due to the following change:
>>
>> On 26/03/2009 21:01, Corinna Vinschen wrote:
>>> - I removed __ctype_ptr (no trailing underscores) and only kept
>>>   __ctype_ptr__.  __ctype_ptr was never used in Cygwin and AFAIK we have
>>>   no other dynamically linking target for newlib which has to maintain
>>>   backward compatibility.
>>
>> (see http://sourceware.org/ml/newlib/2009/msg00370.html)
>>
>> Would it be safe to re-introduce the definition of this variable back
>> into ctype_.c with the attached patch ?
> 
> Since this seems to be a single backward incompatibility in a specific
> scenario, wouldn't it make most sense to ask the third party first to
> rebuild their lib against newlib 1.18.0?
> 
> If that's really not an option, I'd suggest that we introduce a guard
> for __ctype_ptr, just like __CYGWIN__ guards the old __ctype_ definition
> for backward compatilbilty.  There's no use that all targets have to
> carry on with the old variable.
> 
> What about
> 
>   #if defined(NEED_OLD_CTYPE_PTR_DEFINITION)
>   ...
>   #endif
> 
> 
> Corinna
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: newlib.patch
URL: <http://sourceware.org/pipermail/newlib/attachments/20100622/4831f6e7/attachment.ksh>


More information about the Newlib mailing list