This is the mail archive of the mailing list for the newlib project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: HEADSUP: Extended locales and removing __part_load_locale

On 07/13/2016 11:31 AM, Corinna Vinschen wrote:
Hi guys,

Along these lines:

The ctype functions and macros use the global variable __ctype_ptr__.
That's not feasible anymore with POSIX locales which require a function
returning the current locale's ctype array pointer (we should have done
that from the start, duh!)

Apart from Cygwin, do we have a target which has to keep the global
__ctype_ptr__ for backward compat?  If not, I'll remove it in favor of
the per-locale ctype pointer.

Couldn't you just use a similar method as with impure_ptr (_REENT)? (That is, turn the pointer into a function which returns the present pointer.) That could keep backwards compatibility in case someone is using it with the current method, but is not on the mailing list to be able to reply. From a different perspective: __ctype_ptr__ is an internal implementation detail. (It only appears under libc/ctype and libc/include/ctype.h, not anywhere else in newlib or libgloss.) People should not be using it directly, so if it gets changed and such a use breaks something, they get to re-do what they should not have done in the first place.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]