Commit Graph

3871 Commits

Author SHA1 Message Date
kleink 20a43da197 C99: add new parameters int_p_cs_precedes, int_n_cs_precedes,
int_p_sep_by_space, int_n_sep_by_space, int_p_sign_posn and
int_n_sign_posn to monetary locale information.
2001-01-02 10:53:24 +00:00
martin 7c10055175 Be consistent with argument types vs. prototype; use _BSD_VA_LIST_ as
the argument, instead of va_list. Might not make a difference on most
ports, depending on toolchain/MD typedefs. Does make a difference on sparc64,
where it wouldn't compile otherwise.
2000-12-30 16:27:33 +00:00
itojun b648355aae put _RuneLocale pointer into mbstate_t for better thread safeness 2000-12-30 05:05:57 +00:00
itojun f864e401f9 fix shlib function name for a.out case 2000-12-30 05:05:25 +00:00
itojun bb0bfe5b30 initialize mbstate_t properly. 2000-12-30 04:13:25 +00:00
matthias c7a662aae7 Cosmetics. Use _ASM_LABEL for cerror. 2000-12-29 23:16:42 +00:00
matthias beff37f457 Implement 64 bit version of syscall. 2000-12-29 23:16:18 +00:00
bjh21 5aefcfdc06 Create shared ARM source for libc, and move arm26 port over to using it.
The code is (almost) a direct copy of the current arm26 sources.
It's identical to the current arm32 sources, with the following exceptions:
 - _C_LABEL is used on references to C labels from assembler.
 - Function returns in assembler have APCS-26 versions in #ifdef __APCS_26__.
 - It uses SoftFloat 2a rather than SoftFloat 1a.

The first two of these should be inconsequential.  I believe that SoftFloat 2a
should work on arm32 and be backward-compatible with existing code, but this
is not obviously true.  For now, arm32 remains using its own bits of libc.
2000-12-29 20:13:44 +00:00
kleink 6b94677e25 Sprinkle some __restrict into <wchar.h>. 2000-12-29 15:26:33 +00:00
kleink 81ab746b71 Sprinkle some __restrict into stdio. 2000-12-29 15:22:48 +00:00
bjh21 a88be20997 We no longer have _C_FUNC: Use _C_LABEL instead. 2000-12-29 13:39:39 +00:00
bjh21 40906c10a4 Sync with arm32: remove ovbcopy entry point. 2000-12-28 18:33:54 +00:00
bjh21 9d5c6f8887 RCSID cleanup. 2000-12-28 18:27:24 +00:00
itojun 4ab94d919b sync citrus Id part with citrus repository. 2000-12-28 05:27:35 +00:00
itojun 2ea22179ea switch locale module API, from s{get,put}rune to wcrtomb/mbrtowc.
handle intermediate mbstate_t more correctly.
no externally-visible changes here.
2000-12-28 05:22:27 +00:00
itojun 762873adfc re-enable citrus (rune)locale support.
XXX please clean and recompile libc if you get this revision.  UPDATE=yes
may leave obsolete *.o.
2000-12-27 00:57:03 +00:00
itojun b0a406db08 arg mistake to memset 2000-12-26 06:12:09 +00:00
itojun 8e1213a45e convert old style LC_CTYPE ctype table into runelocale table 2000-12-26 00:34:49 +00:00
itojun 6ddc3c8680 read in tolower/ctype table. do not mixup toupper/tolower. 2000-12-26 00:30:51 +00:00
itojun bb629fd1e5 byte default, use (non-citrus) singlebyte locale. if we compile
ld.elf_so with citrus locale, it bombs.
XXX this is shortterm workaround.  if you are willing to test citrus locale,
use RUNE=yes in libc/locale/Makefile.inc.
2000-12-25 23:30:58 +00:00
itojun 67819708f5 indentation 2000-12-25 09:25:15 +00:00
itojun eeed3beffb return _INVALID_RUNE if wchar_t > 0xff, on sgetrune. 2000-12-25 01:39:48 +00:00
jmc b4f129a4ea Update to 69 with the inclusion of the wmem* stuff in string. (shl.mi had
already been updated in sets but this got missed somehow..)
2000-12-24 23:36:51 +00:00
itojun 37fc5e01b9 fix LC_ALL behavior again... 2000-12-24 22:24:04 +00:00
itojun e04ee8e939 split wide char section, just for readability/future possibility for .if 2000-12-24 03:45:04 +00:00
itojun 383f218a51 move wcs* and wmem* from lib/libc/locale to lib/libc/string. 2000-12-23 23:14:33 +00:00
itojun 1da6122f1e make printf-variant work with stateful encodings. 2000-12-23 13:19:31 +00:00
itojun d888b02030 overhaul.
(1) alloate two mbstate_t, for input/output, per a file stream.
(2) correct inbound escape sequence processing.
cope with incomplete string better.  keep intermediate state for single shifts.
let C0/C1 go through.

XXX for (1), we should expand FILE structure, but is possible only with
libc major # bump.
2000-12-23 12:37:18 +00:00
itojun 7448c8b5b4 avoid duplicated free() on initialization failure 2000-12-23 11:53:46 +00:00
itojun bbbc605b71 change _INVALID_RUNE value - the old value (0xfffd) was selected when
rune_t was 16bit.

XXX PLEASE REBUILD YOUR LOCALE DEFINITION FILES BY:
# cd share/mklocale; make clean depend; make; make install
2000-12-23 10:52:34 +00:00
itojun 48fa1b17ab error code check mistake in LC_CTYPE handling 2000-12-23 08:22:40 +00:00
itojun ce0a5e58ed cope with runeglue.c failure better 2000-12-22 22:51:22 +00:00
itojun 85339e75d6 for setlocale(LC_CTYPE) failure, make sure to return NULL. 2000-12-22 22:28:09 +00:00
jdolecek b5590faec8 previous change was not complete enough, so finish and make more correct:
for LC_ALL, return success if at least on of categories was loaded
successfully, error if no category was loaded; in the latter case, we don't
need to back off locale changes, since none happened
2000-12-22 16:50:08 +00:00
jdolecek 675dc9d35b __setlocale(): ignore errors in locale category load for LC_ALL - doing so
is not useful. This is same change as in rev 1.17.
2000-12-22 15:25:11 +00:00
itojun 6d24d8c968 set errno on wcrtomb() encoding error, on EILSEQ. 2000-12-22 06:29:40 +00:00
itojun 4d799da3d4 mbrlen is equivalent to mbrtowc with 1st arg NULL (mentioned in spec). 2000-12-22 06:24:15 +00:00
itojun ab9a937270 add wcsl{cat,cpy} 2000-12-22 05:23:27 +00:00
itojun 2c828fd4c7 add wcsl{cat,cpy} - outside of ISO/IEC 9899:1999,
but i believe it should be there.
2000-12-22 05:21:40 +00:00
itojun f4f13f67be ad manpage for wide character string manipulation (wmem*/wcs*) 2000-12-22 04:59:41 +00:00
itojun d74cd8caeb manpage for tow*. 2000-12-22 02:18:58 +00:00
itojun a7365f619e place return value 2000-12-22 02:13:26 +00:00
itojun 2ea45fbc0e manpage for isw*. 2000-12-22 02:03:32 +00:00
itojun 00d1211195 remove bogus comment 2000-12-21 18:24:57 +00:00
itojun d3617fe94e copyright notice for ld.aout_so/shlib.c 2000-12-21 18:22:56 +00:00
itojun 6376847fbd find shlib/func by findshlib() and findfunc(). this nukes DLRUNE_AOUT,
and removes conditionals for library naming.
XXX if we mix a.out library and elf library in /usr/lib/runemodule...
2000-12-21 18:20:03 +00:00
itojun 1bb02cee54 __RCSID 2000-12-21 17:25:32 +00:00
itojun c2cb892f34 handle $LANG and $LC_xx consistently (slash is forbidden). 2000-12-21 17:16:20 +00:00
itojun 0b16e56b29 correct utf8 encoding error 2000-12-21 12:21:38 +00:00
itojun 2cc37d241b abort() is too much 2000-12-21 12:19:44 +00:00
itojun 6bfa292b5d add multibyte locale converters (just for use by testers at this moment,
to be built as dynamically loadable binary)
2000-12-21 12:17:35 +00:00
itojun b7a136db6b support multibytes in isw*/tow*. 2000-12-21 12:13:28 +00:00
itojun 408f4697a6 first import of citrus LC_CTYPE locale. singlebyte only at this moment.
shot-term TODO:
- enable multibyte locales.  this includes loadable locale modules
  (#ifdef DLRUNE).
- populate LC_CTYPE definition files.
- other functions such as iconv()
- make libc functions more friendly with multibyte.
- multilingualize other LC_xx
- torture tests

XXX don't forget to "make depend" when you rebuild libc, multibyte.c is
moved from lib/libc/stdlib to lib/libc/locale.
2000-12-21 11:29:47 +00:00
itojun 4c56e769f6 add dummy wcwidth() and wcswidth(). wcwidth() will be updated later. 2000-12-21 08:30:52 +00:00
itojun b80578d677 correct return type for tow*. 2000-12-21 06:46:07 +00:00
itojun a25075d36a have dummy wctype.h and isw*/tow*. part of libc minor 68 -> 69 crank.
equivalent to is*/to* at this moment.  we'll put wchar_t code in the
near future.
2000-12-21 05:40:56 +00:00
itojun b6ad76f487 add wcs* functions. consier it as part of libc minor crank 68 -> 69.
add decl of WEOF into wchar.h.  ISO/IEC 9899:1999(E)..
2000-12-21 05:12:18 +00:00
itojun 8f5f80ebfe document net.inet6.icmp6.mtudisc_{lo,hi}wat. 2000-12-21 01:10:52 +00:00
christos 128bd71ffc oops fix previous typos. 2000-12-20 23:08:51 +00:00
christos 0c0e139779 Ignore empty translation unit errors. 2000-12-20 21:13:56 +00:00
christos 6f034c1640 fix const castaway. 2000-12-20 20:57:20 +00:00
christos 52b46a0f13 fix u_char -> char and char -> u_char casts. 2000-12-20 20:56:34 +00:00
christos bebeeecd5b fix sbrk casts 2000-12-20 20:56:01 +00:00
christos d9ce410183 fix nested extern
fix sbrk casts
2000-12-20 20:55:23 +00:00
christos c9f588eab4 fix nested extern 2000-12-20 20:54:30 +00:00
christos f0c45fdbc9 protect against multiple inclusions. 2000-12-20 20:54:01 +00:00
christos f9b8c27ae8 appease lint casts 2000-12-20 20:52:50 +00:00
christos 663f790f35 remove redundant declarations. 2000-12-20 20:51:08 +00:00
christos d76f22c50c add _nsyylineno declaration 2000-12-20 20:50:46 +00:00
christos 413f6305c4 remove unnecessary prototypes
lint casting.
2000-12-20 20:44:14 +00:00
christos 02db12eb31 appease lint casting. 2000-12-20 18:47:11 +00:00
christos 6bae1e9ae7 avoid nested extern declaration 2000-12-20 18:38:30 +00:00
christos b8e7598d98 fix nested extern 2000-12-20 15:59:51 +00:00
itojun 97e0963d33 add wmem* functions, from citrus. bump libc shlib minor. 2000-12-20 14:53:23 +00:00
itojun eb0bc4a58e use strlcpy to guarantee string termination 2000-12-20 11:48:58 +00:00
itojun 1545be872f on setlocale() failure, back out changes made to current_locale[],
and return NULL.  from: From: Shingo WATANABE <nabe@nabechan.org>
2000-12-20 11:44:36 +00:00
cgd b2b63ed4f4 Newer GCCs give warnings when the result of preprocessor token pasting
is not itself a valid (single) preprocessor token.  In other words, don't
use __CONCAT() to add a structure member name to a pointer dereference.
2000-12-19 22:20:48 +00:00
christos ee5e1d12cf fix nested extern declaration. 2000-12-19 21:17:37 +00:00
christos 5b7386b25e fix missing formatting escape. 2000-12-19 21:17:16 +00:00
kleink f5f3357a95 Bump libc minor to 68: addition of __{diag,}assert13. 2000-12-19 14:33:24 +00:00
kleink f02540ff10 C99: Print the name of the function enclosing the assertion, if possible. 2000-12-19 14:32:59 +00:00
lukem 741ea8dc94 fix typo in _nis_grscan(). "if (data); free(data);" -> "if (data) free(data);"
noted by Jacques Vidrine <nectar@FreeBSD.org>
2000-12-17 22:09:12 +00:00
tsubai 7ec5b1f483 Fix weak alias. 2000-12-16 01:40:38 +00:00
bjh21 148c9ed7ee Resync with arm32:
byte_swap_2.S 1.4
  byte_swap_4.S 1.3
2000-12-14 20:47:26 +00:00
mycroft e4a2f51cc9 Adjust to not use ALTENTRY(). 2000-12-14 20:17:32 +00:00
mycroft ffb377199e Make this link right again! 2000-12-14 20:03:42 +00:00
bjh21 f213bb8702 Use _C_LABEL rather than _C_FUNC. 2000-12-14 19:40:22 +00:00
bjh21 d0ec536a8d Sync with arm32. 2000-12-14 19:27:34 +00:00
simonb 1bb9a3396c Remove all the .abicalls assembler directives - "SYS.h" already has that. 2000-12-13 23:29:06 +00:00
simonb 488ef36c45 Another bare minimum __syscall. 2000-12-13 23:18:40 +00:00
garbled 41f8bfbc99 Radixsort wants a const u_char ** as a fisrt argument, not just a
u_char **.  Fix this manpage.
2000-12-13 22:11:24 +00:00
scw e86cd7609a The bare minimum to get m68k libc working again... 2000-12-13 21:46:23 +00:00
martin 772baecb3a Add simple __syscall.S to make libc compile on sparc64 again. 2000-12-13 20:25:04 +00:00
pk efd94d5369 Add required __syscall.S stub. 2000-12-13 10:29:40 +00:00
matt b0bf2adc11 This should convert to syscall but that's too hard. So punt. XXX 2000-12-13 07:50:48 +00:00
mycroft 344549013e Add the obvious, trivial __syscall() stub. 2000-12-13 07:49:17 +00:00
matt 3a17b3526a Don't need __syscall.S here either. 2000-12-13 07:44:34 +00:00
matt 44e25a6200 Add __syscall.S back to sys/Makefile.inc. Remove from arch/i386/gen/
Makefile.inc.  If your architecture doesn't have __syscall.S, *add it*.
2000-12-13 07:42:47 +00:00
matt 0e233d1597 Add a VAX version of __syscall. XXX Doesn't handle if syscall number is
> 0xffffffff or < -0xffffffff.
2000-12-13 07:34:54 +00:00
matt 9a6a3ec1b5 Add __syscall.S to arch/i386/gen/Makefile.inc along with all the other
sys .S files.  Remove from arch/i386/Makefile.inc since it doesn't belong
there.
2000-12-13 07:14:43 +00:00