summaryrefslogtreecommitdiff
path: root/include/locale.h
Commit message (Collapse)AuthorAgeFilesLines
* Implement xlocale APIs from Darwin, mainly for use by libc++. This adds aDavid Chisnall2011-11-201-0/+48
| | | | | | | | | | | | | | | load of _l suffixed versions of various standard library functions that use the global locale, making them take an explicit locale parameter. Also adds support for per-thread locales. This work was funded by the FreeBSD Foundation. Please test any code you have that uses the C standard locale functions! Reviewed by: das (gdtoa changes) Approved by: dim (mentor) Notes: svn path=/head/; revision=227753
* Remove the Berkeley clause 3's.Warner Losh2010-02-161-5/+1
| | | | | | | Add a few $FreeBSD$ Notes: svn path=/head/; revision=203964
* Change the definition of NULL on ia64 (for LP64 compilations) fromMarcel Moolenaar2003-12-071-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | an int constant to a long constant. This change improves consistency in the following two ways: 1. The first 8 arguments are always passed in registers on ia64, which by virtue of the generated code implicitly widens ints to longs and allows the use of an 32-bit integral type for 64-bit arguments. Subsequent arguments are passed onto the memory stack, which does not exhibit the same behaviour and consequently do not allow this. In practice this means that variadic functions taking pointers and given NULL (without cast) work as long as the NULL is passed in one of the first 8 arguments. A SIGSEGV is more likely the result if such would be done for stack-based arguments. This is due to the fact that the upper 4 bytes remain undefined. 2. All 64-bit platforms that FreeBSD supports, with the obvious exception of ia64, allow 32-bit integral types (specifically NULL) when 64-bit pointers are expected in variadic functions by way of how the compiler generates code. As such, code that works correctly (whether rightfully so or not) on any platform other than ia64, may fail on ia64. To more easily allow tweaking of the definition of NULL, this commit removes the 12 definitions in the various headers and puts it in a new header that can be included whenever NULL is to be made visible. This commit fixes GNOME, emacs, xemacs and a whole bunch of ports that I don't particularly care about at this time... Notes: svn path=/head/; revision=123257
* Add support for the 6 new C99 struct lconv members dealing with formattingTim J. Robbins2002-10-091-0/+6
| | | | | | | | | | | | international monetary values: int_p_cs_precedes, int_n_cs_precedes, int_p_sep_by_space, int_n_sep_by_space, int_p_sign_posn, int_n_sign_posn. This should not break existing binaries or LC_MONETARY data files. Reviewed by: ache MFC after: 1 month Notes: svn path=/head/; revision=104711
* Breath deep and take __P out of the system include files.Warner Losh2002-03-231-2/+3
| | | | | | | | | # This appears to not break X11, but I'm having problems compiling the # glide part of the server with or without this patch, so I can't tell # for sure. Notes: svn path=/head/; revision=93032
* Basic support for LC_MESSAGESAndrey A. Chernov1998-04-291-1/+2
| | | | Notes: svn path=/head/; revision=35523
* Remove collate_range_cmpAndrey A. Chernov1996-10-311-3/+0
| | | | Notes: svn path=/head/; revision=19289
* #if !ANSI !POSIX newly added collate_range_cmp functionAndrey A. Chernov1996-08-131-0/+2
| | | | Notes: svn path=/head/; revision=17577
* There is so many places where range comparation (using collate)Andrey A. Chernov1996-08-121-0/+1
| | | | | | | | needed (much more than I think initially), so I forced to add new user-visible non-standard function to libc. Notes: svn path=/head/; revision=17550
* BSD 4.4 Lite Include SourcesRodney W. Grimes1994-05-241-0/+80
Notes: svn path=/head/; revision=1539