public inbox for newlib@sourceware.org
 help / color / mirror / Atom feed
* _PathLocale and __collate_load_tables()
@ 2022-11-18  5:06 Stefan Tauner
  2022-11-21 12:23 ` Corinna Vinschen
  0 siblings, 1 reply; 2+ messages in thread
From: Stefan Tauner @ 2022-11-18  5:06 UTC (permalink / raw)
  To: newlib

Hi,

there is a char *_PathLocale = NULL; in ./newlib/libc/locale/locale.c
that is only read in __collate_load_tables()
in ./newlib/libc/posix/collate.c
I have looked at the git history and even googled but I couldn't figure
out at all what the variable is supposed to be used for. Half of
__collate_load_tables() would be unreachable if _PathLocale is never
non-null. And then I looked at where __collate_load_tables() is used...
and it seems to be not used within the library itself at all, and from
the __ prefix I'd assume it's not really meant to be used externally
(although it has a prototype in collate.h).

Is this all just dead code or what am I missing? :)

-- 
Kind regards/Mit freundlichen Grüßen, Stefan Tauner

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: _PathLocale and __collate_load_tables()
  2022-11-18  5:06 _PathLocale and __collate_load_tables() Stefan Tauner
@ 2022-11-21 12:23 ` Corinna Vinschen
  0 siblings, 0 replies; 2+ messages in thread
From: Corinna Vinschen @ 2022-11-21 12:23 UTC (permalink / raw)
  To: Stefan Tauner; +Cc: newlib

On Nov 18 06:06, Stefan Tauner wrote:
> Hi,
> 
> there is a char *_PathLocale = NULL; in ./newlib/libc/locale/locale.c
> that is only read in __collate_load_tables()
> in ./newlib/libc/posix/collate.c
> I have looked at the git history and even googled but I couldn't figure
> out at all what the variable is supposed to be used for. Half of
> __collate_load_tables() would be unreachable if _PathLocale is never
> non-null. And then I looked at where __collate_load_tables() is used...
> and it seems to be not used within the library itself at all, and from
> the __ prefix I'd assume it's not really meant to be used externally
> (although it has a prototype in collate.h).
> 
> Is this all just dead code or what am I missing? :)

Yes, it's basically dead code.

Orignally this code was added for some reason to support locales in a
minmial BSD-like way, but has never been really used apart from minimal
LC_CTYPE and LC_MESSAGE handling for the "C" locale.  If it was meant to
have a future at one point and what this future would have entailed,
isn't clear to me.

A couple of years ago I added Cygwin-specific code to allow locale
handling by using internal Windows functionality, but I left the rest of
the code intact, so as not to break something if somebody would take a
stab at it for non-Cygwin targets.

I have a vague recollection that I inspected the code once, and found
that it was unsuable for some reason and needs a resolute helping hand.


Corinna


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-11-21 12:23 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-18  5:06 _PathLocale and __collate_load_tables() Stefan Tauner
2022-11-21 12:23 ` Corinna Vinschen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).