summaryrefslogtreecommitdiffstats
path: root/libc/misc/wchar
Commit message (Collapse)AuthorAgeFilesLines
* New stdio core. Should be more maintainable. Fixes a couple of bugs.Manuel Novoa III2004-02-113-34/+39
| | | | | | | | Codepaths streamlined. Improved performance for nonthreaded apps when linked with a thread-enabled libc. Minor iconv bug and some locale/thread related startup issues fixed. These showed up in getting a gcj-compiled java helloworld app running. Removed some old extension functions... _stdio_fdout and _stdio_fsfopen.
* Fix a long-standing bug with pthreads. A couple of linuxthreads filesManuel Novoa III2003-12-271-3/+3
| | | | | | | | | | | | | | | | were including libc-lock.h which had a bunch of weak pragmas. Also, uClibc supplied a number of no-op weak thread functions even though many weren't needed. This combined result was that sometimes the functional versions of thread functions in pthread would not override the weaks in libc. While fixing this, I also prepended double-underscore to all necessary weak thread funcs in uClibc, and removed all unused weaks. I did a test build, but haven't tested this since these changes are a backport from my working tree. I did test the changes there and no longer need to explicitly add -lpthread in the perl build for perl to pass its thread self tests.
* Building of iconv.o was accidently always disabled.Manuel Novoa III2003-12-041-8/+4
| | | | Also, build the iconv app in utils.
* For now, disable the iconv utilityEric Andersen2003-11-081-8/+7
|
* Some more soft float fixes... for arm in particular (libfloat).Manuel Novoa III2003-10-311-1/+1
| | | | | | Remove the ADD_LIBGCC_FUNCTIONS option and do things the right way. Either we have a shared libgcc available, or the libgcc routines aren't PIC and don't belong in the shared libc anyway.
* Peter Kjellerstedt writes:Eric Andersen2003-10-181-1/+1
| | | | | | | rm.patch: * Define $(RM) as rm -f in Rules.mak and test/Rules.mak (this is the same definition as gmake uses by default). * Change all occurrences of rm and rm -f into $(RM).
* _wchar_utf8sntowcs and _wchar_wcsntoutf8s now set errno if EILSEQ.Manuel Novoa III2003-08-181-0/+7
|
* Add a new *scanf implementation, includeing the *wscanf functions.Manuel Novoa III2003-08-013-47/+102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Should be standards compliant and with several optional features, including support for hexadecimal float notation, locale awareness, glibc-like locale-specific digit grouping with the `'' flag, and positional arg support. I tested it pretty well (finding several bugs in glibc's scanf in the process), but it is brand new so be aware. The *wprintf functions now support floating point output. Also, a couple of bugs were squashed. Finally, %a/%A conversions are now implemented. Implement the glibc xlocale interface for thread-specific locale support. Also add the various *_l(args, locale_t loc_arg) funcs. NOTE!!! setlocale() is NOT threadsafe! NOTE!!! The strto{floating point} conversion functions are now locale aware. The also now support hexadecimal floating point notation. Add the wcsto{floating point} conversion functions. Fix a bug in mktime() related to dst. Note that unlike glibc's mktime, uClibc's version always normalizes the struct tm before attempting to determine the correct dst setting if tm_isdst == -1 on entry. Add a stub version of the libintl functions. (untested) Fixed a known memory leak in setlocale() related to the collation data. Add lots of new config options (which Erik agreed to sort out :-), including finally exposing some of the stripped down stdio configs. Be careful with those though, as they haven't been tested in a long time. (temporary) GOTCHAs... The ctype functions are currently incorrect for 8-bit locales. They will be fixed shortly. The ctype functions are now table-based, resulting in larger staticly linked binaries. I'll be adding an option to use the old approach in the stub locale configuration.
* Oops.. left in a bit of debugging code.Manuel Novoa III2002-11-231-2/+0
|
* Ok... here's the summary:Manuel Novoa III2002-11-223-41/+653
| | | | | | | | | | | | | | Hopefully locale support will build when cross compiling now. Collation is still not supported, but that's what I'm currently working on. In the next couple of days, I'll probably put up a couple of files for download that will save people the trouble of generating all the glibc locales. Added *wprintf functions, although they currently don't support floating point. That will be fixed when I rewrite _dtostr... or possibly before. Added the wcsto{inttype} functions. Added iconv() and a mini iconv utility. The require locale support and only provide for conversions involving the various unicode encodings { UCS-4*, UCS-2*, UTF-32*, UTF-16*, UTF-8 }, the 8-bit codesets built with the locale data, and the internal WCHAR_T.
* Add wcwidth and wcswidth, based on Markus Kuhn's wcwidth of 2002-05-08.Manuel Novoa III2002-11-082-1/+254
| | | | | | Added some size/speed optimizations and integrated it into my locale framework. Minimally tested at the moment, but the stub C-locale version (which most people would probably be using) should be fine.
* Forgot to change btowc and wctob when I changed the wc<->mb functions yesterday.Manuel Novoa III2002-11-051-9/+25
|
* Add printf wchar support for %lc (%C) and %ls (%S).Manuel Novoa III2002-11-041-15/+41
| | | | | | | | | | | | | Require printf format strings to be valid multibyte strings beginning and ending in their initial shift state, as per the stds. Fixed a bug in _wchar_wcsntoutf8s(). Don't store wcs position if dst is NULL. Also, introduce an awful hack into _wchar_wcsntoutf8s() and wcsrtombs() in order to support %ls in printf. See comments below for details. Change behaviour of wc<->mb functions when in the C locale. Now they do a 1-1 map for the range 0x80-UCHAR_MAX. This is for backwards compatibility and consistency with the stds requirements that a printf format string by a valid multibyte string beginning and ending in it's initial shift state.
* Hide my personal #warning reminders. Add __wcschrnul, rename strchrnulManuel Novoa III2002-09-191-0/+4
| | | | to __strchrnul, and add weak aliases for them.
* Revert commit by davidm to printf.c that initialized conv_numManuel Novoa III2002-08-121-1/+1
| | | | | | | | | needlessly. To do so increases the generated code size with bcc. Eliminate duplicate define warnings in wstring.c. Fix potentially broken preprocessor comparisons. The preprocessor converts integers to maximal signed type, so inequality comparisons involving UINTMAX_MAX, ULLONG_MAX, and (if no long long) ULONG_MAX were potentially broken.
* When DODEBUG and HAS_WCHAR were enabled and HAS_LOCALE was disabled,Eric Andersen2002-08-031-2/+6
| | | | | | | | wchar.c wouldn't compile: wchar.c: In function `__mbsnrtowcs': wchar.c:631: `__ctype_encoding_7_bit' undeclared (first use in this function) This fixes it by keeping the locale specific asserts hidden when not relevant. -Erik
* Add copyright message and remove dead code.Manuel Novoa III2002-07-051-157/+28
|
* Enable WCHAR support for C/POSIX stub locales.Manuel Novoa III2002-07-033-21/+626
| | | | | | Implemented unformatted wide i/o functions. (ungetwc still needs testing) Fix a few bugs in wchar.c. Modifications for bcc/elks support.
* Multibyte and wide char conversion functions. Some work still to do, butManuel Novoa III2002-05-232-0/+770
they're quite solid now and Erik needs them for the gcc port. Comments at the head of wchar.c.