Hi Christopher, Christopher Lam <christopher....@gmail.com> writes:
> Addendum - wish to confirm if guile bug (guile-2.2 on Windows): > - set locale to non-Anglo so that (setlocale LC_ALL) returns > "French_France.1252" > - call (strftime "%B" 4000000) - that's 4x10^6 -- this should return > "février 1970" > > but the following error arises: > Throw to key `decoding-error' with args `("scm_from_utf8_stringn" "input > locale conversion error" 0 #vu8(102 233 118 114 105 101 114 32 49 57 55 > 48))'. > > Is this a bug? Yes. Guile's 'strftime' procedure currently assumes that the underlying 'nstrftime' C function (from Gnulib) will produce output in UTF-8, although it almost certainly produces output in the locale encoding. Indeed, the bytevector #vu8(102 233 118 114 105 101 114 32 49 57 55 48) represents the characters "février 1970" in Windows-1252 encoding. I'm CC'ing this reply to <bug-guile@gnu.org>, so that a bug ticket will be created. In the future, that's the preferred address for sending bug reports. Anyway, thanks for letting us know about this. I'll work on it soon. Mark