[pacman-dev] pacman sorting incompatible with 'sort' command

Martin Kühne mysatyre at gmail.com
Fri May 5 14:45:35 UTC 2017


On Fri, May 5, 2017 at 4:06 PM, Kieran Colford <kieran at kcolford.com> wrote:
> Maybe pacman should sort according to the current locale, it's all in glibc
> so it should be trivial to implement. Is there a technical reason for using
> the C locale or is it just a default?
>


Trying to pin down the impact of a call to setlocale(LC_ALL, NULL).
This changes the behavior of the following functions:

fprintf, fscanf, printf, scanf, snprintf, sscanf, vfprintf, vfscanf,
vprintf, vscanf, vsnprintf, vsprintf, vsscanf, mblen, mbtowc, wctomb,
mbstowcs, wcstombs, strtol, strtoll, strtoul, strtoull, strcoll,
strftime, strxfrm, isalnum, isalpha, isblank, iscntrl, isgraph,
islower, isprint, ispunct, isspace, isupper, tolower, toupper

Accoring to POSIX, these have to be taken into account additionally:

exec, isdigit, iswalnum, iswalpha, iswblank, iswcntrl, iswctype,
iswdigit, iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper,
iswxdigit, isxdigit, localeconv, nl_langinfo, setlocale, strerror,
strfmon, strtod, towlower, towupper, wcscoll, wcstod, wcsxfrm

I'm not sure how exec functions behave with regard to setlocale, I
don't think it should have any affect and only receive whatever is in
**environ. Then again, it's mentioned in [0].

cheers!
mar77i

[0] http://pubs.opengroup.org/onlinepubs/009695399/functions/setlocale.html


More information about the pacman-dev mailing list