Source-Changes-D archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: CVS commit: src/lib/libedit
hi, all.
i found following problems this patch:
1. don't write UTF-8 locale dependent ``cheat'' code in locale
independent libedit,
such as enc_width(), utf8_islead() and so on, completely meaningless.
our locale implementation is "CodeSet Independ" policy, wchar_t != UCS4.
please read itojun@'s paper.
http://www.usenix.org/events/usenix01/freenix01/hagino.html
2. cast wchar_t -> wint_t in the argument of isw* function.
consider sizeof(wchar_t) < sizeof(wint_t) case (for integer promotion).
3. kill evil __STDC_ISO_10646__ usage.
if you want kick some encodings not compatible with ASCII(like EBCDIC),
use __STDC_MB_MIGHT_NEQ_WC__ instead.
see http://www.open-std.org/jtc1/sc22/wg14/www/docs/dr_321.htm
4. library function must not use thread unsafe version of mb/wc conversion,
like mbtowc, wctomb and so on. use mbrtowc/wcrtomb instead.
this may broke compatibility some old apllication that uses mbtowc/wctomb.
i'm willing to fix them, but i'm busy now, not enough time to do it til April...
very truly yours.
--
Takehiko NOZAKI<takehiko.nozaki%gmail.com@localhost>
Home |
Main Index |
Thread Index |
Old Index