History log of /src/share/man/man3/Makefile |
Revision | | Date | Author | Comments |
1.94 |
| 08-Oct-2024 |
christos | Add man page for container_of
|
1.93 |
| 15-Aug-2024 |
riastradh | libc: New C11 functions mbrtoc16, mbrtoc32, c16rtomb, c32rtomb.
The mbrtoc16/32 functions read mulitbyte strings according to the current locale into UTF-16/32 code unit sequences; the c16/32rtomb functions write UTF-16/32 code unit sequences into multibyte strings according to the current locale. The `r' means restartable: they work incrementally and pick up where they left off.
NOTE: This bumps the libc minor version, since it adds new symbols.
PR lib/52374: <uchar.h> missing
|
1.92 |
| 07-Mar-2024 |
christos | Add _dlauxinfo
|
1.91 |
| 22-Jan-2022 |
skrll | branches: 1.91.2; Add __MASK(3)
__MASK(n): first n bits all set, where __MASK(4) == 0b1111.
|
1.90 |
| 13-Jan-2020 |
kamil | Document dlinfo(3)
Man-page taken from FreeBSD.
|
1.89 |
| 10-Nov-2019 |
christos | Document __FPTRCAST XXX: more macros need documentation (__CAST etc.)
|
1.88 |
| 27-Nov-2013 |
christos | branches: 1.88.26; fix typo
|
1.87 |
| 27-Nov-2013 |
christos | and a few more.
|
1.86 |
| 27-Nov-2013 |
christos | forgot one
|
1.85 |
| 27-Nov-2013 |
christos | Sync queue man pages with queue.h.
|
1.84 |
| 26-Nov-2013 |
christos | remove CIRCLEQ pages.
|
1.83 |
| 27-Oct-2013 |
apb | Add man mage links for __debugused(3) and __diagused(3).
|
1.82 |
| 17-Oct-2013 |
christos | describe the __USE macro
|
1.81 |
| 07-Dec-2012 |
christos | add __BITMAP_TYPE
|
1.80 |
| 01-Dec-2012 |
christos | add documentation for the bitmap macros
|
1.79 |
| 09-Aug-2011 |
jruoho | branches: 1.79.2; 1.79.8; Add a summary page for <limits.h>.
|
1.78 |
| 17-Jul-2011 |
joerg | Retire varargs.h support. Move machine/stdarg.h logic into MI sys/stdarg.h and expect compiler to provide proper builtins, defaulting to the GCC interface. lint still has a special fallback. Reduce abuse of _BSD_VA_LIST_ by defining __va_list by default and derive va_list as required by standards.
|
1.77 |
| 25-Jun-2011 |
nonaka | PR/45015: ld.elf_so: support ELF symbol versioning Applied latest patch.
|
1.76 |
| 19-May-2011 |
riastradh | Add a cmsg.3 man page symlink, since I can never remember its name.
ok wiz
|
1.75 |
| 12-Apr-2011 |
jruoho | Add a small summary parge for struct tm from <time.h>. Cf. timeval(3).
|
1.74 |
| 10-Apr-2011 |
jruoho | Add a small summary page for <unistd.h>.
|
1.73 |
| 08-Apr-2011 |
jruoho | Add also a small summary page for <sys/bitops.h>.
|
1.72 |
| 08-Apr-2011 |
jruoho | Briefly summarize <sys/param.h>.
|
1.71 |
| 30-Mar-2011 |
jruoho | Briefly document <paths.h>.
|
1.70 |
| 19-Mar-2011 |
jruoho | Briefly document __predict_true() and __predict_false().
|
1.69 |
| 22-Dec-2010 |
jruoho | Document the __builtin_prefetch() GNU extension.
|
1.68 |
| 21-Dec-2010 |
jruoho | Document the __builtin_types_compatible_p() GNU/GCC extension.
|
1.67 |
| 19-Dec-2010 |
jruoho | Document __builtin_constant_p().
|
1.66 |
| 19-Dec-2010 |
jruoho | Document the __builtin_return_address() GNU extension. Again this is well justified due to the wide use of these non-standard extensions in the tree.
|
1.65 |
| 19-Dec-2010 |
jruoho | Document the __alignof__ GNU extension.
|
1.64 |
| 17-Dec-2010 |
jruoho | There is no harm to add a manual page for the GNU typeof()-construct, given that it has already crawled into the source tree.
|
1.63 |
| 17-Dec-2010 |
jruoho | Briefly describe __read_mostly and __cachline_aligned.
|
1.62 |
| 17-Dec-2010 |
jruoho | Add __insn_barrier(3). XXX: Someone more knowledgeable may want to check this.
|
1.61 |
| 16-Dec-2010 |
jruoho | Document __dead, __pure, __constfunc, __noinline, __unused, and __used.
|
1.60 |
| 16-Dec-2010 |
jruoho | Now that <sys/cdefs.h> is mostly documented, include a small summary page for it, cdefs(3).
|
1.59 |
| 16-Dec-2010 |
jruoho | Start to document the GNU C attributes. For now, only __packed, __aligned, and __section are documented, but I will keep extending this.
|
1.58 |
| 14-Dec-2010 |
jruoho | Add a manual page for the makedev(), major(), and minor() macros.
Taken from FreeBSD. Written by Ed Schouten.
|
1.57 |
| 24-Oct-2010 |
jruoho | Catch-up with code changes.
|
1.56 |
| 16-Oct-2010 |
skrll | Implement dl_iterate_phdr.
Somewhat taken from FreeBSD. Manual page from OpenBSD.
|
1.55 |
| 08-Jun-2010 |
jruoho | Document ilog2() from <sys/bitops.h>.
|
1.54 |
| 19-May-2010 |
jruoho | Add sigevent(3), a manual page that describes the struct sigevent used by the POSIX real time functions and timers.
XXX: (a) Needs to be modified once real time signals are supported. (b) Could use an example.
|
1.53 |
| 18-May-2010 |
jruoho | Describe also the timespec() family of macros in timeradd(3).
|
1.52 |
| 17-May-2010 |
jruoho | Add a manual page that describes the basic structures in <sys/time.h>.
|
1.51 |
| 16-May-2010 |
jruoho | As was done with the man-page for <sys/types.h>, move dir(5) to dirent(3). Add a table describing the stat <-> dirent types. Note IFTODT() and DTTOIF().
|
1.50 |
| 28-Apr-2010 |
jruoho | Document ffs32(), ffs64(), fls32(), and fls64() from <sys/bitops.h>.
|
1.49 |
| 22-Apr-2010 |
jruoho | Rewrite types(5) as per perry@'s suggestion from few years back ("XXX this document is rather musty. It needs a general update."). Also move it to the right section from section 5. Ok wiz@.
To minimize maintenance costs, the content is mostly jargon around The Standard. Only few NetBSD-specific types are mentioned as an example.
|
1.48 |
| 21-Apr-2010 |
jruoho | Document __STRING(x) and __CONCAT(x, y) from <sys/cdefs.h>.
|
1.47 |
| 13-Apr-2010 |
jruoho | Hook rb(3) to the build.
|
1.46 |
| 25-Mar-2010 |
jruoho | Document <stdlib.h>.
Written with minimum maintenance costs in mind; only the defined types and macros are described.
|
1.45 |
| 21-Mar-2010 |
jruoho | Document the weird <iso646.h>.
|
1.44 |
| 21-Mar-2010 |
jruoho | Document <inttypes.h>.
|
1.43 |
| 21-Mar-2010 |
jruoho | While at it, add also stddef(3).
|
1.42 |
| 21-Mar-2010 |
jruoho | As we have added stdint(3) and tgmath(3), we may as well add stdbool(3).
|
1.41 |
| 20-Mar-2010 |
jruoho | Add a manual page for <stdint.h>. From FreeBSD, by Mike Barcroft.
|
1.40 |
| 19-Mar-2010 |
joerg | Add man page for fast_divide32.
|
1.39 |
| 01-Mar-2010 |
jruoho | Add tgmath(3). From FreeBSD.
XXX: Needs proofreading, Matt?
|
1.38 |
| 01-Mar-2010 |
jruoho | Document __arraycount.
|
1.37 |
| 01-Mar-2010 |
jruoho | Document __UNCONST and __UNVOLATILE.
XXX: If there is anything to add or correct, please do so!
|
1.36 |
| 27-Feb-2010 |
wiz | Add offsetof(3) man page. From Thomas Pfaff via OpenBSD.
|
1.35 |
| 24-Jan-2010 |
njoly | Do not link timeradd.3 to itself.
|
1.34 |
| 24-Jan-2010 |
jruoho | Add timeradd(3).
|
1.33 |
| 04-Apr-2009 |
perry | add missing MLINKS for bitstring.3
|
1.32 |
| 20-Jun-2008 |
christos | branches: 1.32.2; 1.32.4; steal the OpenBSD man page.
|
1.31 |
| 29-Aug-2007 |
pooka | branches: 1.31.6; 1.31.10; Add table which summarizes operations supported by each queue type.
from Stathis Kamperis in PR misc/36857
|
1.30 |
| 15-Aug-2007 |
kiyohara | branches: 1.30.2; Replace to Matthew Orgass's slhci(4). http://mail-index.netbsd.org/tech-kern/2007/06/26/0001.html
|
1.29 |
| 31-Aug-2006 |
dyoung | Per discussion on tech-kern and tech-userlevel, move the bit-twiddling macros, __BIT, __BITS, SHIFTIN, SHIFTOUT, and __arraycount() from lib/libkern/libkern.h to sys/cdefs.h. Add a __-prefix to SHIFTIN and SHIFTOUT, and add a manual page for the bit-twiddling macros, bits(3).
Make the __BIT and __BITS macros "widthless," as best I can, by changing their type to uintmax_t from uint32_t. XXX The manual page lags this change by a bit.
Define __PRIxBIT and __PRIxBITS printf(3) format strings.
|
1.28 |
| 07-Mar-2006 |
pooka | document CIRCLEQ_LOOP
|
1.27 |
| 30-Sep-2005 |
rpaulo | Add sysexits.3
|
1.26 |
| 18-Apr-2004 |
lukem | Add MLINKS for: CIRCLEQ_FOREACH(3) CIRCLEQ_FOREACH_REVERSE(3) LIST_FOREACH(3) SIMPLEQ_FOREACH(3) SLIST_EMPTY(3) SLIST_ENTRY(3) SLIST_FIRST(3) SLIST_FOREACH(3) SLIST_HEAD(3) SLIST_HEAD_INITIALIZER(3) SLIST_INIT(3) SLIST_INSERT_AFTER(3) SLIST_INSERT_HEAD(3) SLIST_NEXT(3) SLIST_REMOVE(3) SLIST_REMOVE_HEAD(3) STAILQ_EMPTY(3) STAILQ_ENTRY(3) STAILQ_FIRST(3) STAILQ_FOREACH(3) STAILQ_HEAD(3) STAILQ_HEAD_INITIALIZER(3) STAILQ_INIT(3) STAILQ_INSERT_AFTER(3) STAILQ_INSERT_HEAD(3) STAILQ_INSERT_TAIL(3) STAILQ_NEXT(3) STAILQ_REMOVE(3) STAILQ_REMOVE_HEAD(3) TAILQ_FOREACH(3) TAILQ_FOREACH_REVERSE(3) TAILQ_LAST(3) TAILQ_PREV(3)
|
1.25 |
| 07-Jul-2003 |
yamt | tree(3) manpage from OpenBSD.
|
1.24 |
| 01-Jun-2002 |
lukem | SIMPLEQ rototill: - implement SIMPLEQ_REMOVE(head, elm, type, field). whilst it's O(n), this mirrors the functionality of SLIST_REMOVE() (the other singly-linked list type) and FreeBSD's STAILQ_REMOVE() - remove the unnecessary elm arg from SIMPLEQ_REMOVE_HEAD(). this mirrors the functionality of SLIST_REMOVE_HEAD() (the other singly-linked list type) and FreeBSD's STAILQ_REMOVE_HEAD() - remove notes about SIMPLEQ not supporting arbitrary element removal - use SIMPLEQ_FOREACH() instead of home-grown for loops - use SIMPLEQ_EMPTY() appropriately - use SIMPLEQ_*() instead of accessing sqh_first,sqh_last,sqe_next directly - reorder manual page; be consistent about how the types are listed - other minor cleanups
|
1.23 |
| 04-Feb-2002 |
kleink | Add a separate varargs(3) manual page, reusing stdarg(3) contents, and remove the name `varargs' from stdarg(3); inspired by conversation with Charles Hannum.
|
1.22 |
| 22-Oct-2001 |
lukem | install all the macro links to queue.3 using the correct UPPER_CASE name
|
1.21 |
| 03-Jan-2001 |
lukem | add manual page for _DIAGASSERT(3)
|
1.20 |
| 03-Aug-2000 |
ad | PCVT is dead. From NAKAJIMA Yoshihiro <nakayosh@kcn.ne.jp>.
|
1.19 |
| 27-May-2000 |
mycroft | branches: 1.19.2; Document *_EMPTY().
|
1.18 |
| 03-Feb-2000 |
kleink | branches: 1.18.2; Document va_copy.
|
1.17 |
| 28-Jun-1999 |
ad | Add missing link for dladdr.3
|
1.16 |
| 16-Mar-1999 |
mycroft | Oops; missed one.
|
1.15 |
| 14-Mar-1999 |
mycroft | Add missing links for queue.3.
|
1.14 |
| 11-Oct-1997 |
mycroft | Use bsd.man.mk and bsd.subdir.mk as appropriate.
|
1.13 |
| 30-Sep-1997 |
christos | PR/4126: Luke Mewburn: queue(3) doesn't document SIMPLEQ_*
|
1.12 |
| 24-Jun-1997 |
mikel | SUBDIR must be set *before* including bsd.*.mk
|
1.11 |
| 23-Jun-1997 |
mrg | move man pages into share/man.
|
1.10 |
| 06-Oct-1995 |
thorpej | Fix typo: dclose.3 -> dlclose.3
|
1.9 |
| 01-Oct-1995 |
pk | Install dlfcn.3 and links.
|
1.8 |
| 22-Dec-1994 |
cgd | specify man pages the new way.
|
1.7 |
| 30-Nov-1994 |
jtc | Merged with 4.4lite. Changed to conform to NetBSD's new RCS Id convention.
|
1.6 |
| 06-Oct-1994 |
mycroft | Add more links for queue.h.
|
1.5 |
| 21-Dec-1993 |
cgd | queue.h from 4.4, from Bostic
|
1.4 |
| 30-Oct-1993 |
mycroft | Add links for va_arg.3, va_end.3, va_start.3, per G.Wollman's suggestion.
|
1.3 |
| 31-Jul-1993 |
mycroft | Add RCS indentifiers.
|
1.2 |
| 26-Apr-1993 |
mycroft | Once more, don't make `all' depend on man page; bsd.prog.mk does this.
|
1.1 |
| 21-Mar-1993 |
cgd | branches: 1.1.1; Initial revision
|
1.1.1.2 |
| 30-Nov-1994 |
jtc | imported from 4.4lite
|
1.1.1.1 |
| 21-Mar-1993 |
cgd | initial import of 386bsd-0.1 sources
|
1.18.2.1 |
| 22-Jun-2000 |
minoura | Sync w/ netbsd-1-5-base.
|
1.19.2.1 |
| 08-Sep-2000 |
ad | Pull up revision 1.20 (approved by releng-1-5): PCVT is dead.
|
1.30.2.1 |
| 06-Nov-2007 |
matt | sync with HEAD
|
1.31.10.1 |
| 23-Jun-2008 |
wrstuden | Sync w/ -current. 34 merge conflicts to follow.
|
1.31.6.1 |
| 29-Jun-2008 |
mjf | Sync with HEAD.
|
1.32.4.1 |
| 13-May-2009 |
jym | Sync with HEAD.
Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
|
1.32.2.1 |
| 17-Mar-2012 |
bouyer | Pull up following revision(s) via patch (requested by skrll in ticket #1724): rescue/list.ldd: revision 1.4 lib/libc/dlfcn/dlfcn_elf.c: revision 1.7 libexec/ld.elf_so/arch/mips/mips_reloc.c: revision 1.57 distrib/sets/lists/comp/mi: revision 1.1512 share/man/man3/Makefile: revision 1.56 libexec/ld.elf_so/arch/mips/mips_reloc.c: revision 1.58 usr.bin/ldd/ldd.c: revision 1.15 libexec/ld.elf_so/rtld.h: revision 1.84 share/man/man3/dl_iterate_phdr.3: revision 1.1 libexec/ld.elf_so/rtld.c: revision 1.129 libexec/ld.elf_so/arch/powerpc/ppc_reloc.c: revision 1.44 libexec/ld.elf_so/rtld.h: revision 1.89 libexec/ld.elf_so/arch/x86_64/mdreloc.c: revision 1.36 libexec/ld.elf_so/map_object.c: revision 1.41 libexec/ld.elf_so/arch/x86_64/mdreloc.c: revision 1.37 libexec/ld.elf_so/arch/sparc64/mdreloc.c: revision 1.46 include/link_elf.h: revision 1.10 libexec/ld.elf_so/arch/i386/mdreloc.c: revision 1.29 libexec/ld.elf_so/arch/vax/mdreloc.c: revision 1.26 libexec/ld.elf_so/arch/alpha/alpha_reloc.c: revision 1.34 libexec/ld.elf_so/arch/hppa/hppa_reloc.c: revision 1.31 libexec/ld.elf_so/arch/alpha/alpha_reloc.c: revision 1.35 libexec/ld.elf_so/Makefile: revision 1.94 libexec/ld.elf_so/arch/hppa/hppa_reloc.c: revision 1.32 libexec/ld.elf_so/Makefile: revision 1.95 libexec/ld.elf_so/arch/arm/mdreloc.c: revision 1.31 libexec/ld.elf_so/Makefile: revision 1.96 libexec/ld.elf_so/arch/arm/mdreloc.c: revision 1.32 libexec/ld.elf_so/reloc.c: revision 1.98 libexec/ld.elf_so/arch/arm/mdreloc.c: revision 1.33 sys/sys/exec_elf.h: revision 1.106 libexec/ld.elf_so/rtld.c: revision 1.130 libexec/ld.elf_so/load.c: revision 1.37 libexec/ld.elf_so/rtld.c: revision 1.131 libexec/ld.elf_so/load.c: revision 1.38 libexec/ld.elf_so/rtld.h: revision 1.90 libexec/ld.elf_so/headers.c: revision 1.36 libexec/ld.elf_so/rtld.h: revision 1.95 libexec/ld.elf_so/arch/i386/mdreloc.c: revision 1.30 libexec/ld.elf_so/arch/m68k/mdreloc.c: revision 1.25 libexec/ld.elf_so/symbol.c: revision 1.50 libexec/ld.elf_so/symbol.c: revision 1.51 libexec/ld.elf_so/arch/sparc/mdreloc.c: revision 1.43 libexec/ld.elf_so/symbol.c: revision 1.52 libexec/ld.elf_so/arch/sh3/mdreloc.c: revision 1.27 libexec/ld.elf_so/symbol.c: revision 1.54 PR/39240: Satoshi Suetake: Don't fail when attempting to resolve weak symbols when we are doing immediate binding, leave them alone and they will be dealt with later during lazy binding. From skrll@ Implement negative cache checks for symbol lookups. Uses the Donelist idea from FreeBSD. Use alloca(3) instead of local xmalloc for creating our DoneLists. This allows threaded programs to use us a little better, PR lib/43005. Implement dl_iterate_phdr. Somewhat taken from FreeBSD. Manual page from OpenBSD.
|
1.79.8.2 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.79.8.1 |
| 25-Feb-2013 |
tls | resync with head
|
1.79.2.2 |
| 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.79.2.1 |
| 16-Jan-2013 |
yamt | sync with (a bit old) head
|
1.88.26.2 |
| 13-Apr-2020 |
martin | Mostly merge changes from HEAD upto 20200411
|
1.88.26.1 |
| 08-Apr-2020 |
martin | Merge changes from current as of 20200406
|
1.91.2.1 |
| 14-Oct-2024 |
martin | Pull up following revision(s) (requested by riastradh in ticket #976):
lib/libc/locale/c32rtomb.3: revision 1.10 lib/libc/locale/c32rtomb.3: revision 1.9 lib/libc/locale/c32rtomb.3: revision 1.11 tests/lib/libc/locale/t_mbrtoc32.c: revision 1.1 distrib/sets/lists/base/shl.mi: revision 1.988 lib/libc/include/namespace.h: revision 1.204 lib/libc/include/namespace.h: revision 1.205 lib/libc/locale/mbrtoc16.3: revision 1.1 lib/libc/locale/mbrtoc16.c: revision 1.1 lib/libc/locale/mbrtoc16.3: revision 1.2 lib/libc/locale/mbrtoc16.c: revision 1.2 lib/libc/locale/mbrtoc16.3: revision 1.3 lib/libc/locale/mbrtoc16.c: revision 1.3 lib/libc/locale/mbrtoc32.3: revision 1.1 lib/libc/locale/mbrtoc32.c: revision 1.1 tests/lib/libc/locale/t_c16rtomb.c: revision 1.1 lib/libc/locale/mbrtoc32.c: revision 1.2 lib/libc/locale/mbrtoc16.3: revision 1.4 lib/libc/locale/mbrtoc16.c: revision 1.4 lib/libc/locale/mbrtoc32.3: revision 1.2 tests/lib/libc/locale/t_c16rtomb.c: revision 1.2 lib/libc/locale/mbrtoc32.c: revision 1.3 lib/libc/locale/mbrtoc16.3: revision 1.5 lib/libc/locale/mbrtoc16.c: revision 1.5 lib/libc/locale/mbrtoc32.3: revision 1.3 tests/lib/libc/locale/t_c16rtomb.c: revision 1.3 lib/libc/locale/mbrtoc32.c: revision 1.4 lib/libc/locale/mbrtoc16.3: revision 1.6 lib/libc/locale/mbrtoc16.c: revision 1.6 lib/libc/locale/mbrtoc32.3: revision 1.4 tests/lib/libc/locale/t_c16rtomb.c: revision 1.4 lib/libc/locale/mbrtoc32.c: revision 1.5 lib/libc/locale/mbrtoc16.3: revision 1.7 lib/libc/locale/mbrtoc16.c: revision 1.7 lib/libc/locale/mbrtoc32.3: revision 1.5 tests/lib/libc/locale/t_c16rtomb.c: revision 1.5 lib/libc/locale/mbrtoc32.c: revision 1.6 lib/libc/locale/mbrtoc16.3: revision 1.8 lib/libc/locale/mbrtoc32.3: revision 1.6 tests/lib/libc/locale/t_c16rtomb.c: revision 1.6 lib/libc/locale/mbrtoc32.c: revision 1.7 lib/libc/locale/mbrtoc16.3: revision 1.9 lib/libc/locale/mbrtoc32.3: revision 1.7 lib/libc/locale/mbrtoc32.c: revision 1.8 lib/libc/locale/mbrtoc32.3: revision 1.8 lib/libc/locale/mbrtoc32.c: revision 1.9 distrib/sets/lists/comp/mi: revision 1.2468 lib/libc/locale/mbrtoc32.3: revision 1.9 distrib/sets/lists/comp/mi: revision 1.2469 lib/libc/locale/c32rtomb.h: revision 1.1 lib/libc/locale/c32rtomb.h: revision 1.2 include/Makefile: revision 1.147 share/man/man3/uchar.3: revision 1.1 share/man/man3/uchar.3: revision 1.2 tests/lib/libc/locale/t_c32rtomb.c: revision 1.1 distrib/sets/lists/comp/mi: revision 1.2470 lib/libc/locale/c16rtomb.3: revision 1.1 lib/libc/locale/c16rtomb.c: revision 1.1 lib/libc/locale/c16rtomb.3: revision 1.2 lib/libc/locale/c16rtomb.c: revision 1.2 lib/libc/locale/c16rtomb.3: revision 1.3 lib/libc/locale/c16rtomb.c: revision 1.3 lib/libc/locale/c16rtomb.3: revision 1.4 lib/libc/locale/c16rtomb.c: revision 1.4 lib/libc/locale/c16rtomb.3: revision 1.5 lib/libc/locale/c16rtomb.c: revision 1.5 lib/libc/locale/c16rtomb.3: revision 1.6 lib/libc/locale/c16rtomb.c: revision 1.6 lib/libc/locale/c16rtomb.3: revision 1.7 lib/libc/locale/c16rtomb.c: revision 1.7 lib/libc/locale/c16rtomb.3: revision 1.8 lib/libc/locale/c16rtomb.3: revision 1.9 distrib/sets/lists/tests/mi: revision 1.1330 distrib/sets/lists/tests/mi: revision 1.1331 distrib/sets/lists/tests/mi: revision 1.1332 tests/lib/libc/locale/t_uchar.c: revision 1.1 tests/lib/libc/locale/t_uchar.c: revision 1.2 tests/lib/libc/locale/t_uchar.c: revision 1.3 tests/lib/libc/locale/t_mbrtoc16.c: revision 1.1 tests/lib/libc/locale/t_mbrtoc16.c: revision 1.2 tests/lib/libc/locale/t_mbrtoc16.c: revision 1.3 include/uchar.h: revision 1.1 include/uchar.h: revision 1.2 include/uchar.h: revision 1.3 include/uchar.h: revision 1.4 include/uchar.h: revision 1.5 tests/lib/libc/locale/t_c8rtomb.c: revision 1.1 include/uchar.h: revision 1.6 tests/lib/libc/locale/t_c8rtomb.c: revision 1.2 tests/lib/libc/locale/t_c8rtomb.c: revision 1.3 tests/lib/libc/locale/t_c8rtomb.c: revision 1.4 share/man/man3/Makefile: revision 1.93 tests/lib/libc/locale/t_c8rtomb.c: revision 1.5 tests/lib/libc/locale/t_c8rtomb.c: revision 1.6 tests/lib/libc/locale/t_c8rtomb.c: revision 1.7 lib/libc/shlib_version: revision 1.297 lib/libc/locale/c16rtomb.3: revision 1.10 lib/libc/locale/c16rtomb.3: revision 1.11 tests/lib/libc/locale/t_mbrtoc8.c: revision 1.1 tests/lib/libc/locale/t_mbrtoc8.c: revision 1.2 tests/lib/libc/locale/t_mbrtoc8.c: revision 1.3 lib/libc/locale/mbrtoc16.3: revision 1.10 tests/lib/libc/locale/Makefile: revision 1.15 tests/lib/libc/locale/Makefile: revision 1.16 tests/lib/libc/locale/Makefile: revision 1.17 tests/lib/libc/locale/Makefile: revision 1.18 distrib/sets/lists/debug/mi: revision 1.442 distrib/sets/lists/debug/mi: revision 1.443 distrib/sets/lists/debug/mi: revision 1.444 lib/libc/locale/c8rtomb.3: revision 1.1 lib/libc/locale/c8rtomb.c: revision 1.1 lib/libc/locale/c8rtomb.3: revision 1.2 lib/libc/locale/c8rtomb.c: revision 1.2 lib/libc/locale/c8rtomb.3: revision 1.3 lib/libc/locale/c8rtomb.c: revision 1.3 lib/libc/locale/c8rtomb.3: revision 1.4 lib/libc/locale/c8rtomb.c: revision 1.4 lib/libc/locale/c8rtomb.3: revision 1.5 lib/libc/locale/c8rtomb.c: revision 1.5 lib/libc/locale/c8rtomb.3: revision 1.6 lib/libc/locale/c8rtomb.c: revision 1.6 lib/libc/locale/c8rtomb.3: revision 1.7 lib/libc/locale/c8rtomb.3: revision 1.8 lib/libc/locale/c8rtomb.3: revision 1.9 lib/libc/locale/mbrtoc32.h: revision 1.1 lib/libc/locale/mbrtoc32.h: revision 1.2 lib/libc/locale/mbrtoc8.c: revision 1.1 lib/libc/locale/mbrtoc8.3: revision 1.1 lib/libc/locale/mbrtoc8.c: revision 1.2 lib/libc/locale/mbrtoc8.3: revision 1.2 lib/libc/locale/mbrtoc8.c: revision 1.3 lib/libc/locale/mbrtoc8.3: revision 1.3 lib/libc/locale/mbrtoc8.c: revision 1.4 lib/libc/locale/mbrtoc8.3: revision 1.4 lib/libc/locale/Makefile.inc: revision 1.66 lib/libc/locale/mbrtoc8.c: revision 1.5 lib/libc/locale/mbrtoc8.3: revision 1.5 lib/libc/locale/Makefile.inc: revision 1.67 lib/libc/locale/mbrtoc8.c: revision 1.6 lib/libc/locale/mbrtoc8.3: revision 1.6 lib/libc/locale/mbrtoc8.c: revision 1.7 lib/libc/locale/mbrtoc8.3: revision 1.7 lib/libc/locale/mbrtoc8.c: revision 1.8 lib/libc/locale/c32rtomb.3: revision 1.1 lib/libc/locale/c32rtomb.c: revision 1.1 lib/libc/locale/c32rtomb.3: revision 1.2 lib/libc/locale/c32rtomb.c: revision 1.2 lib/libc/locale/c32rtomb.3: revision 1.3 lib/libc/locale/c32rtomb.c: revision 1.3 lib/libc/locale/c32rtomb.3: revision 1.4 lib/libc/locale/c32rtomb.c: revision 1.4 lib/libc/locale/c32rtomb.3: revision 1.5 lib/libc/locale/c32rtomb.c: revision 1.5 lib/libc/locale/c32rtomb.3: revision 1.6 lib/libc/locale/c32rtomb.c: revision 1.6 lib/libc/locale/c32rtomb.3: revision 1.7 lib/libc/locale/c32rtomb.3: revision 1.8
(all via patch)
tests/lib/libc/locale/Makefile: Sort. No functional change intended. Preparation for PR lib/52374.
uchar.h: New header file for C11 (and C++11) compliance.
Implementation of the new functions mbrtoc16, c16rtomb, mbrtoc32, and c32rtomb to come later. Updates for C23 to come later. PR lib/52374: <uchar.h> missing
libc: New C11 functions mbrtoc16, mbrtoc32, c16rtomb, c32rtomb.
The mbrtoc16/32 functions read mulitbyte strings according to the current locale into UTF-16/32 code unit sequences; the c16/32rtomb functions write UTF-16/32 code unit sequences into multibyte strings according to the current locale. The `r' means restartable: they work incrementally and pick up where they left off.
NOTE: This bumps the libc minor version, since it adds new symbols.
PR lib/52374: <uchar.h> missing mbrtoc16(3), mbrtoc32(3): Fix \n in man page examples. Need to write \en to pacify roff. PR lib/52374: <uchar.h> missing
c16rtomb(3), c32rtomb(3): Fix more \n in man pages. Also, tighten an assertion: we left room for a NUL byte at the end. PR lib/52374: <uchar.h> missing
libc: Use the more idiomatic alignof from stdalign.h. No functional change intended. PR lib/52374: <uchar.h> missing
mbrtoc16(3): Simplify surrogate state test.
Turn the finer-grained test into an assertion. No semantic change intended: we are supposed to control this state, and we always arrange it this way. (But in principle this could change the behaviour of buggy programs that violate the mbstate_t abstraction.) PR lib/52374: <uchar.h> missing
libc: New functions c8rtomb(3) and mbrtoc8(3).
New in C23, for converting from UTF-8 to locale-dependent multibyte sequences (c8rtomb) or vice versa (mbrtoc8), along with the new type char8_t.
Conditional on either: - _NETBSD_SOURCE - _ISOC23_SOURCE - __STDC_VERSION__ >= 202311L (Riding the libc minor bump from this morning for the UTF-16/UTF-32 versions from C11.)
PR standards/58601: uchar.h C23 compliance: char8_t, mbrtoc8, c8rtomb libc: c32rtomb and mbrtoc32 are used internally, so weak-alias them. PR lib/52374: <uchar.h> missing c8rtomb(3), mbrtoc8(3): Use namespace.h to get private aliases.
This way applications defining the symbols c32rtomb or mbrtoc32 won't clobber our private definitions, which are slightly more constrained about their use of mbstate_t than is obvious from the interface contract.
PR standards/58601: uchar.h C23 compliance: char8_t, mbrtoc8, c8rtomb mbrtoc16(3), mbrtoc32(3): brush up markup
Split long .Fn lines into Fo/Fa/Fc. Dont indent the list of return values. Don't use artisanal -width.
Untabify code examples - indented literal displays don't have correct tab stops consistent with tab stops in the fixed font code, so the lines end up misaligned in the PostScript output.
c16rtomb(3), c32rtomb(3): brush up markup
mbrtoc16(3), mbrtoc32(3): Simplify return value language. Also expand BMP only once. PR lib/52374: <uchar.h> missing
mbrtoc16(3), mbrtoc32(3): No state overlap with mbrtoc8 or c8rtomb. PR standards/58601: uchar.h C23 compliance: char8_t, mbrtoc8, c8rtomb
mbrtoc32(3): Clarify control flow. No need for another goto here; let's keep it clearly structured with a single `out' label. No functional change intended. PR lib/52374: <uchar.h> missing
c8rtomb(3), mbrtoc8(3): brush up markup
mbrtoc8(3): Simplify return value language. PR standards/58601: uchar.h C23 compliance: char8_t, mbrtoc8, c8rtomb
c16rtomb(3), c32rtomb(3): Specify what happens if ps is null. PR lib/52374: <uchar.h> missing
c8rtomb(3): Specify what happens when ps is null. PR standards/58601: uchar.h C23 compliance: char8_t, mbrtoc8, c8rtomb
c16rtomb(3), c32rtomb(3): No state overlap with mbrtoc8 or c8rtomb. PR standards/58601: uchar.h C23 compliance: char8_t, mbrtoc8, c8rtomb
mbrtoc16(3), mbrtoc32(3): Work on deturgidifying prose. Still maybe not great but at least there's less jargon in most of the text, without really losing any content. PR lib/52374: <uchar.h> missing
mbrtoc8(3): Work on deturgidifying prose. PR standards/58601: uchar.h C23 compliance: char8_t, mbrtoc8, c8rtomb
mbrtoc16(3), mbrtoc32(3): Restore word accidentally removed. PR lib/52374: <uchar.h> missing
mbrtoc8(3): Restore word accidentally removed. PR standards/58601: uchar.h C23 compliance: char8_t, mbrtoc8, c8rtomb
c8rtomb(3): Fix possible error descriptions. The argument c8 can't be a surrogate code point itself (they're in the range [0xd800,0xdfff], beyond 8-bit values), but the bits of a surrogate code point could be forced into the UTF-8 format, which is also invalid. PR standards/58601: uchar.h C23 compliance: char8_t, mbrtoc8, c8rtomb
c16rtomb(3), c32rtomb(3): Attempt a deturgidification pass. Limit the jargon around surrogates. PR lib/52374: <uchar.h> missing
c8rtomb(3): Clarify prose and fix example in caveat. PR standards/58601: uchar.h C23 compliance: char8_t, mbrtoc8, c8rtomb c16rtomb(3), c32rtomb(3), mbrtoc16(3), mbrtoc32(3): xref c8 versions. PR standards/58601: uchar.h C23 compliance: char8_t, mbrtoc8, c8rtomb
mbrtoc16(3): Clarify how many bytes are consumed in special cases. Fix overlap in RETURN VALUES section. PR lib/52374: <uchar.h> missing
mbrtoc8(3): Clarify how many bytes are consumed in special cases. Fix overlap in RETURN VALUES section. PR standards/58601: uchar.h C23 compliance: char8_t, mbrtoc8, c8rtomb
pass lint, XXX see lint bug.
libc: Add _l variants of the cNrtomb and mbrtocN functions. These accept an explicit locale parameter, rather than using the current locale. Visible under _NETBSD_SOURCE, not exposed otherwise. NOTE: This adds libc symbols. Riding the libc minor bump for the non-_l variants of these from two days ago -- hope that's not pushing it too far. PR lib/58613: c*rtomb, mbrtoc* should have locale-parametric _l variants
c8rtomb(3), c16rtomb(3): Add tests for incomplete NUL termination. PR lib/58615: incomplete c8rtomb, c16rtomb handles NUL termination wrong
c8rtomb(3), c16rtomb(3): Fix NUL handling. PR lib/58615: incomplete c8rtomb, c16rtomb handles NUL termination wrong
c8rtomb(3), c16rtomb(3), c32rtomb(3): Test stateful shift sequences. PR lib/58612: c8rtomb/c16rtomb/c32rtomb yield suboptimal shift sequences
c8rtomb(3): Fix digit error in shift sequence test. PR lib/58612: c8rtomb/c16rtomb/c32rtomb yield suboptimal shift sequences
c8rtomb(3): Nix __CTASSERT after case label. I put this in to make it (machine-verifiably) clear that zeroing the state is the same as returning to the initial conversion state, as the standard requires, but this is causing build trouble (and will likely cause more trouble if pulled up) because some definitions of __CTASSERT make a declaration which is forbidden after a label, so let's remove it. PR standards/58601: uchar.h C23 compliance: char8_t, mbrtoc8, c8rtomb
mbrtoc8(3): Fix pasto in comment at top. No functional change intended. PR standards/58601: uchar.h C23 compliance: char8_t, mbrtoc8, c8rtomb
mbrtoc8: remove lint-specific workarounds No binary change.
mbrtoc8: fix comments
mbrtoc16, mbrtoc32: fix comments, remove lint-specific workarounds No binary change. t_c8rtomb, t_c16rtomb: Simplify comment. ESC $ B is technically rather the JIS X 0208-1983 shift sequence, but since I don't see any way to provoke the JIS X 0208-1978 shift sequence to come flying out of this conversion (ESC $ @), and I'm not sure there's any difference in the interpretation, let's just say JIS X 0208. PR lib/58612: c8rtomb/c16rtomb/c32rtomb yield suboptimal shift sequences
c32rtomb(3): Use conversion state to handle shift sequences. For conversion of Unicode scalar values to coding systems requiring shift sequences, such as ISO-2022-JP, _citrus_iconv_convert will always produce: 1. a shift sequence from the initial state to some nondefault state, like from US-ASCII to JIS X 0208 2. the encoding of the desired characater 3. a shift sequence restoring the initial state This is unnecessary if the output is already in the state needed to encoded the desired character. For example, this method produces seven bytes to encode each YEN SIGN in ISO-2022-JP -- and fourteen, to encode two consecutive ones -- even though the shift sequence is only three bytes long and once shifted YEN SIGN takes only one byte. Instead, convert the Unicode scalar value to a locale-dependent wide character and encode that, by composing - _citrus_iconv_convert => gives us a multibyte encoding of the character from the initial state (and restoring the initial state afterward) - mbrtowc with initial conversion state => gives us the single wide character representation XXX If combining characters are possible here, this may fail. - wcrtomb with caller's conversion tsate => gives us a state-dependent multibyte encoding of the character XXX Is there a cheaper way to convert from Unicode scalar value to locale-dependent wide character? It is not obvious to me from the largely undocumented Citrus machinery, but it would obviously be better than this somewhat circuitous Rube Goldberg contraption of chained multibyte APIs. PR lib/58612: c8rtomb/c16rtomb/c32rtomb yield suboptimal shift sequences
mbrtoc8(3), mbrtoc16(3): Test consuming shift sequences with state. This has the side effect of testing mbrtoc32(3) because they are both defined in terms of it. PR lib/58618: mbrtocN(3) fails to keep shift state
c8rtomb(3), c16rtomb(3), c32rtomb(3): Suggest MB_LEN_MAX in example. This way it avoids variable-length arrays, by always allocating the maximum space that could be occupied by MB_CUR_MAX.
mbrtoc32(3): Use conversion state to handle shift sequences. PR lib/58618: mbrtocN(3) fails to keep shift state
mbrtoc32(3): Fix name and type of mbrtowc_l return value. This was from `int mbtowc_l(...)' in an earlier draft and I didn't update it to size_t when I changed the draft to mbrtowc_l. Caught by lint. `mb_len' avoids (harmless) clash with standard C function mblen(3). PR lib/58618: mbrtocN(3) fails to keep shift state
c32rtomb(3): Fix type of wcrtomb_l return value. This was from `int wctomb_l(...)' in an earlier draft and I didn't update it to size_t when I changed the draft to wcrtomb_l. Caught by lint. `wc_len' mirrors `mb_len' in the complementary code in mbrtoc32(3) to avoid clash with standard C function mblen(3). PR lib/58612: c8rtomb/c16rtomb/c32rtomb yield suboptimal shift sequences
c8rtomb(3), c16rtomb(3), c32rtomb(3): Attempt to simplify language.
c8rtomb(3), c16rtomb(3), c32rtomb(3): Fix null string output case. This ignores c8/c16/c32, produces no output anywhere, and just resets ps to the initial conversion state. Also just use 0 in the example, not '\0' or L'\0'. This works for C11, which prefers '\0' and L'\0', for and C23, which introduced the new u8'\0', u'\0' (UTF-16), and U'\0' (UTF-32). c16rtomb, c32rtomb, mbrtoc8: fix page numbers in comments mbrtoc8(3), mbrtoc16(3), mbrtoc32(3): Say 0 for zero code unit. Rather than deal with differences between C11 and C23 in notation, '\0' vs L'\0' vs u8'\0' vs u'\0' vs U'\0'. uchar.h: Include <sys/featuretest.h> before testing _*_SOURCE. PR lib/58752: various header files test _*_SOURCE macros but don't include sys/featuretest.h PR lib/52374: <uchar.h> missing
uchar.h: Need <sys/cdefs.h> for __restrict. PR lib/52374: <uchar.h> missing
uchar.h: Simplify __cpp_char8_t and __cplusplus conditionals. No functional change intended. PR lib/52374: <uchar.h> missing
tests/lib/libc/locale/t_uchar: Test for char8_t, mbrtoc8, c8rtomb. PR lib/58752: various header files test _*_SOURCE macros but don't include sys/featuretest.h PR lib/52374: <uchar.h> missing
tests/t_uchar: fix copy-and-paste typo
|