Hi Mike, "Michael Gran" <spk...@yahoo.com> writes:
> commit aafb5062b834dc468fa2acdec7eda12e389c5bca > Author: Michael Gran <spk...@yahoo.com> > Date: Thu Sep 24 08:07:38 2009 -0700 > > Language-specific case-conversion doesn't honor locale > > Libunistring uses a function uc_locale_language to extract the > current language from the locale information. It does this by calling > setlocale. This makes incompatible with Guile functions that use the > locale_t thread-specific locale API, because the values returned by the > call to setlocale ignore the locale set by uselocale. > > As a workaround, this patch extracts the language from the locale_t > structure's __names field. Unfortunately this is not an option because it’s way too fragile, and will not compile non-GNU systems that implement this API (such as Darwin, and any POSIX 2008 system). How about reporting a bug against libunistring so that it uses uselocale(3) instead of setlocale(3) to determine the current language when uselocale(3) is available? Furthermore, we could suggest that support for the ‘locale_t’ API would be great. :-) Thanks, Ludo’.