update and handle enums in api tables
authornsz <nsz@port70.net>
Mon, 13 Oct 2014 23:15:51 +0000 (01:15 +0200)
committernsz <nsz@port70.net>
Mon, 13 Oct 2014 23:15:51 +0000 (01:15 +0200)
data/musl.problems
inctags.sh
maketags.sh
tab_c11.html
tab_c11.sh
tab_c99.html
tab_c99.sh
tab_posix.html

index 44ace6c..4d41538 100644 (file)
@@ -4,6 +4,7 @@ proto   ElfW    link.h  link.h   ElfW(Addr) l_addr;      ElfW(Addr) dlpi_addr;
 proto  ElfW    link.h  link.h   ElfW(Dyn) *l_ld;        ElfW(Addr) dlpi_addr;
 proto  ElfW    link.h  link.h   ElfW(Addr) r_brk;       ElfW(Addr) dlpi_addr;
 proto  ElfW    link.h  link.h   ElfW(Addr) r_ldbase;    ElfW(Addr) dlpi_addr;
+nodecl arch_prctl      T
 proto  basename        string.h        libgen.h        char *basename();       char *basename(char *);
 proto  basename        string.h        char*() char*(char*)    char *basename();       char *basename(char *path);
 nodecl capget  T
index 457db4a..a91a2c0 100755 (executable)
@@ -5,7 +5,7 @@ export LC_ALL=C
 dotags() {
 (
        cd $1
-       ctags -f /tmp/inc.tags -R -n -u --links=no --languages='c,c++' --c-kinds=pxdstuv --fields=k --exclude='*.c' .
+       ctags -f /tmp/inc.tags -R -n -u --links=no --languages='c,c++' --c-kinds=pxdstuve --fields=k --exclude='*.c' .
 )
 awk -v path=$1/ '
 BEGIN {
index b3ab173..f634f21 100755 (executable)
@@ -5,7 +5,7 @@ MUSL=${MUSL:-../musl}
 
 (
        cd $MUSL/include
-       ctags -f /tmp/musl.tags -R -n -u --language-force=c --c-kinds=pxdstuv --fields=k --exclude='*.sh' .
+       ctags -f /tmp/musl.tags -R -n -u --language-force=c --c-kinds=pxdstuve --fields=k --exclude='*.sh' .
 
        # fix wchar_t bug of ctags
        awk '/typedef.* wchar_t/{print "wchar_t\tbits/alltypes.h\t" NR ";\"\tt"}' bits/alltypes.h >>/tmp/musl.tags
index effa472..5c704e8 100644 (file)
@@ -1,5 +1,5 @@
 <h3>musl vs c11 api</h3>
-<h4>commit</h4><p>commit <a href="http://git.musl-libc.org/cgit/musl/commit/?id=5edbc6fe13e1e0f27e3d3a20f2582da476f74c4b">5edbc6fe13e1e0f27e3d3a20f2582da476f74c4b</a><br>Date:   2014-09-10 12:47:55 -0400<br><br>    add _DEFAULT_SOURCE feature profile as an alias for _BSD_SOURCE<br>    <br>    as a result of commit ab8f6a6e42ff893041f7545a23e6d6a0edde07fb, this<br>    definition is now equivalent to the actual "default profile" which<br>    appears immediately below in features.h, and which defines both<br>    _BSD_SOURCE and _XOPEN_SOURCE.<br>    <br>    the intent of providing a _DEFAULT_SOURCE, which glibc also now<br>    provides, is to give applications a way to "get back" the default<br>    feature profile when it was lost either by compiler flags that inhibit<br>    it (such as -std=c99) or by library-provided predefined macros (such<br>    as -D_POSIX_C_SOURCE=200809L) which may inhibit exposure of features<br>    that were otherwise visible by default and which the application may<br>    need. without _DEFAULT_SOURCE, the application had encode knowledge of<br>    a particular libc's defaults, and such knowledge was fragile and<br>    subject to bitrot.<br>    <br>    eventually the names _GNU_SOURCE and _BSD_SOURCE should be phased out<br>    in favor of the more-descriptive and more-accurate _ALL_SOURCE and<br>    _DEFAULT_SOURCE, leaving the old names as aliases but using the new<br>    ones internally. however this is a more invasive change that would<br>    require extensive regression testing, so it is deferred.
+<h4>commit</h4><p>commit <a href="http://git.musl-libc.org/cgit/musl/commit/?id=00548408398ced546c540dab773ea66cea4fe1c2">00548408398ced546c540dab773ea66cea4fe1c2</a><br>Date:   2014-10-13 18:26:28 -0400<br><br>    eliminate global waiters count in pthread_once
 <h4>legend</h4><ul><li>status: musl implementation status summary<ul><li>(empty) - implemented<li>nosym - prototype found in include files (see decl) but not in libc.a (see sym)<li>nodecl - symbol is in libc.a but not declared in a public header<li>missing - neither in include files (see decl) nor in libc.a (see sym)</ul><li>sym: external symbol kind as found by `nm libc.a` (symbol kind only reported once)<ul><li>C - symbol is common (uninitialized data)<li>D - symbol is in the initialized data section<li>R - symbol is in the read only data section<li>T - symbol is in the text section<li>V - weak object<li>W - weak symbol</ul><li>decl: kind of declaration as found by `ctags -R include` (every occurance is reported, arch specific definitions are not linked)<ul><li>d - macro definition<li>t - typedef<li>s - struct declaration<li>u - union declaration<li>p - function prototype<li>x - external and forward variable declaration</ul></ul><p>(Annex K apis are excluded: -D__STDC_WANT_LIB_EXT1__=0 is assumed)
 <h4>table</h4><table border=1><tr><th colspan=3>musl<th colspan=4>c11<tr><th>status<th>sym<th>decl<th>name<th>header<th>proto<th>section
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/assert.h#n12">d</a> <td>static_assert<td>assert.h<td>&#160;<td>B.1 Diagnostics
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/signal.h#n247">p</a> <td>raise<td>signal.h<td>int raise(int sig);<td>B.13 Signal handling
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdalign.h#n12">d</a> <td>alignas<td>stdalign.h<td>&#160;<td>B.14 Alignment
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdalign.h#n17">d</a> <td>__alignas_is_defined<td>stdalign.h<td>&#160;<td>B.14 Alignment
-<tr><td>&#160;<td>&#160;<td>t t v v <td>va_list<td>stdarg.h<td>&#160;<td>B.15 Variable arguments
+<tr><td>&#160;<td>&#160;<td>t v <td>va_list<td>stdarg.h<td>&#160;<td>B.15 Variable arguments
 <tr><td>&#160;<td>&#160;<td>d <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdarg.h#n15">d</a> <td>va_arg<td>stdarg.h<td>type va_arg(va_list ap, type);<td>B.15 Variable arguments
 <tr><td>&#160;<td>&#160;<td>d <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdarg.h#n16">d</a> <td>va_copy<td>stdarg.h<td>void va_copy(va_list dest, va_list src);<td>B.15 Variable arguments
 <tr><td>&#160;<td>&#160;<td>d <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdarg.h#n14">d</a> <td>va_end<td>stdarg.h<td>void va_end(va_list ap);<td>B.15 Variable arguments
 <tr><td>&#160;<td>&#160;<td>t v <td>max_align_t<td>stddef.h<td>&#160;<td>B.18 Common definitions
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/locale.h#n11">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/locale.h#n13">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stddef.h#n5">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stddef.h#n7">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdio.h#n25">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdio.h#n27">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n11">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n13">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/string.h#n11">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/string.h#n13">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/time.h#n11">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/time.h#n13">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/unistd.h#n19">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/unistd.h#n21">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/wchar.h#n37">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/wchar.h#n39">d</a> <td>NULL<td>stddef.h<td>&#160;<td>B.18 Common definitions
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/alltypes.h.in#n1">v</a> t <td>size_t<td>stddef.h<td>&#160;<td>B.18 Common definitions
-<tr><td>&#160;<td>&#160;<td>t <td>wchar_t<td>stddef.h<td>&#160;<td>B.18 Common definitions
+<tr><td>&#160;<td>&#160;<td>t <td>wchar_t<td>stddef.h<td>&#160;<td>B.18 Common definitions
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stddef.h#n20">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stddef.h#n22">d</a> <td>offsetof<td>stddef.h<td>offsetof(type, member-designator)<td>B.18 Common definitions
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/alltypes.h.in#n9">v</a> t <td>int8_t<td>stdint.h<td>&#160;<td>B.19 Integer types
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/alltypes.h.in#n10">v</a> t <td>int16_t<td>stdint.h<td>&#160;<td>B.19 Integer types
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n63">t</a> <td>ldiv_t<td>stdlib.h<td>&#160;<td>B.21 General utilities
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n76">d</a> <td>EXIT_FAILURE<td>stdlib.h<td>&#160;<td>B.21 General utilities
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n79">d</a> <td>MB_CUR_MAX<td>stdlib.h<td>&#160;<td>B.21 General utilities
-<tr><td>&#160;<td>&#160;<td>t <td>wchar_t<td>stdlib.h<td>&#160;<td>B.21 General utilities
+<tr><td>&#160;<td>&#160;<td>t <td>wchar_t<td>stdlib.h<td>&#160;<td>B.21 General utilities
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n64">t</a> <td>lldiv_t<td>stdlib.h<td>&#160;<td>B.21 General utilities
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n77">d</a> <td>EXIT_SUCCESS<td>stdlib.h<td>&#160;<td>B.21 General utilities
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n62">t</a> <td>div_t<td>stdlib.h<td>&#160;<td>B.21 General utilities
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n12">d</a> <td>thread_local<td>threads.h<td>&#160;<td>B.25 Threads
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n15">t</a> <td>once_flag<td>threads.h<td>&#160;<td>B.25 Threads
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n41">d</a> <td>ONCE_FLAG_INIT<td>threads.h<td>&#160;<td>B.25 Threads
-<tr><td>missing<td>&#160;<td>&#160;<td>mtx_plain<td>threads.h<td>&#160;<td>B.25 Threads
+<tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n36">e</a> <td>mtx_plain<td>threads.h<td>&#160;<td>B.25 Threads
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n25">d</a> <td>TSS_DTOR_ITERATIONS<td>threads.h<td>&#160;<td>B.25 Threads
-<tr><td>missing<td>&#160;<td>&#160;<td>mtx_recursive<td>threads.h<td>&#160;<td>B.25 Threads
+<tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n37">e</a> <td>mtx_recursive<td>threads.h<td>&#160;<td>B.25 Threads
 <tr><td>&#160;<td>&#160;<td>t v <td>cnd_t<td>threads.h<td>&#160;<td>B.25 Threads
-<tr><td>missing<td>&#160;<td>&#160;<td>mtx_timed<td>threads.h<td>&#160;<td>B.25 Threads
+<tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n38">e</a> <td>mtx_timed<td>threads.h<td>&#160;<td>B.25 Threads
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n11">t</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n9">t</a> <td>thrd_t<td>threads.h<td>&#160;<td>B.25 Threads
-<tr><td>missing<td>&#160;<td>&#160;<td>thrd_timedout<td>threads.h<td>&#160;<td>B.25 Threads
+<tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n32">e</a> <td>thrd_timedout<td>threads.h<td>&#160;<td>B.25 Threads
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n16">t</a> <td>tss_t<td>threads.h<td>&#160;<td>B.25 Threads
-<tr><td>missing<td>&#160;<td>&#160;<td>thrd_success<td>threads.h<td>&#160;<td>B.25 Threads
+<tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n28">e</a> <td>thrd_success<td>threads.h<td>&#160;<td>B.25 Threads
 <tr><td>&#160;<td>&#160;<td>t v <td>mtx_t<td>threads.h<td>&#160;<td>B.25 Threads
-<tr><td>missing<td>&#160;<td>&#160;<td>thrd_busy<td>threads.h<td>&#160;<td>B.25 Threads
+<tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n29">e</a> <td>thrd_busy<td>threads.h<td>&#160;<td>B.25 Threads
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n18">t</a> <td>tss_dtor_t<td>threads.h<td>&#160;<td>B.25 Threads
-<tr><td>missing<td>&#160;<td>&#160;<td>thrd_error<td>threads.h<td>&#160;<td>B.25 Threads
+<tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n30">e</a> <td>thrd_error<td>threads.h<td>&#160;<td>B.25 Threads
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n17">t</a> <td>thrd_start_t<td>threads.h<td>&#160;<td>B.25 Threads
-<tr><td>missing<td>&#160;<td>&#160;<td>thrd_nomem<td>threads.h<td>&#160;<td>B.25 Threads
+<tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n31">e</a> <td>thrd_nomem<td>threads.h<td>&#160;<td>B.25 Threads
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n56">p</a> <td>call_once<td>threads.h<td>void call_once(once_flag *flag, void (*func)(void));<td>B.25 Threads
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n69">p</a> <td>cnd_broadcast<td>threads.h<td>int cnd_broadcast(cnd_t *cond);<td>B.25 Threads
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/threads.h#n67">p</a> <td>cnd_destroy<td>threads.h<td>void cnd_destroy(cnd_t *cond);<td>B.25 Threads
 <tr><td>missing<td>&#160;<td>&#160;<td>c16rtomb<td>uchar.h<td>size_t c16rtomb(char * restrict s, char16_t c16, mbstate_t * restrict ps);<td>B.27 Unicode utilities
 <tr><td>missing<td>&#160;<td>&#160;<td>mbrtoc32<td>uchar.h<td>size_t mbrtoc32(char32_t * restrict pc32, const char * restrict s, size_t n, mbstate_t * restrict ps);<td>B.27 Unicode utilities
 <tr><td>missing<td>&#160;<td>&#160;<td>c32rtomb<td>uchar.h<td>size_t c32rtomb(char * restrict s, char32_t c32, mbstate_t * restrict ps);<td>B.27 Unicode utilities
-<tr><td>&#160;<td>&#160;<td>t <td>wchar_t<td>wchar.h<td>&#160;<td>B.28 Extended multibyte/wide character utilities
+<tr><td>&#160;<td>&#160;<td>t <td>wchar_t<td>wchar.h<td>&#160;<td>B.28 Extended multibyte/wide character utilities
 <tr><td>&#160;<td>&#160;<td>t v <td>wint_t<td>wchar.h<td>&#160;<td>B.28 Extended multibyte/wide character utilities
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdint.h#n85">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdint.h#n88">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/wchar.h#n29">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/wchar.h#n32">d</a> <td>WCHAR_MAX<td>wchar.h<td>&#160;<td>B.28 Extended multibyte/wide character utilities
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/alltypes.h.in#n1">v</a> t <td>size_t<td>wchar.h<td>&#160;<td>B.28 Extended multibyte/wide character utilities
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/wctype.h#n40">p</a> <td>towctrans<td>wctype.h<td>wint_t towctrans(wint_t wc, wctrans_t desc);<td>B.29 Wide character classification and mapping utilities
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/wctype.h#n43">p</a> <td>wctrans<td>wctype.h<td>wctrans_t wctrans(const char *property);<td>B.29 Wide character classification and mapping utilities
 </table>
-<h4>stats</h4><ul><li>missing: 105<li>nosym: 0<li>nodecl: 0</ul>
+<h4>stats</h4><ul><li>missing: 97<li>nosym: 0<li>nodecl: 0</ul>
index ed9ee5e..90c7249 100755 (executable)
@@ -64,7 +64,7 @@ BEGIN {
                } else if (sym[$1]) {
                        s = s "nodecl"
                        nodecl++
-               } else if (kind[$1] ~ /[dtsu]/) {
+               } else if (kind[$1] ~ /[dtsue]/) {
                        s = s "&#160;"
                } else if (kind[$1]) {
                        s = s "nosym"
index 27ef5df..2c3a507 100644 (file)
@@ -1,5 +1,5 @@
 <h3>musl vs c99 api</h3>
-<h4>commit</h4><p>commit <a href="http://git.musl-libc.org/cgit/musl/commit/?id=5edbc6fe13e1e0f27e3d3a20f2582da476f74c4b">5edbc6fe13e1e0f27e3d3a20f2582da476f74c4b</a><br>Date:   2014-09-10 12:47:55 -0400<br><br>    add _DEFAULT_SOURCE feature profile as an alias for _BSD_SOURCE<br>    <br>    as a result of commit ab8f6a6e42ff893041f7545a23e6d6a0edde07fb, this<br>    definition is now equivalent to the actual "default profile" which<br>    appears immediately below in features.h, and which defines both<br>    _BSD_SOURCE and _XOPEN_SOURCE.<br>    <br>    the intent of providing a _DEFAULT_SOURCE, which glibc also now<br>    provides, is to give applications a way to "get back" the default<br>    feature profile when it was lost either by compiler flags that inhibit<br>    it (such as -std=c99) or by library-provided predefined macros (such<br>    as -D_POSIX_C_SOURCE=200809L) which may inhibit exposure of features<br>    that were otherwise visible by default and which the application may<br>    need. without _DEFAULT_SOURCE, the application had encode knowledge of<br>    a particular libc's defaults, and such knowledge was fragile and<br>    subject to bitrot.<br>    <br>    eventually the names _GNU_SOURCE and _BSD_SOURCE should be phased out<br>    in favor of the more-descriptive and more-accurate _ALL_SOURCE and<br>    _DEFAULT_SOURCE, leaving the old names as aliases but using the new<br>    ones internally. however this is a more invasive change that would<br>    require extensive regression testing, so it is deferred.
+<h4>commit</h4><p>commit <a href="http://git.musl-libc.org/cgit/musl/commit/?id=00548408398ced546c540dab773ea66cea4fe1c2">00548408398ced546c540dab773ea66cea4fe1c2</a><br>Date:   2014-10-13 18:26:28 -0400<br><br>    eliminate global waiters count in pthread_once
 <h4>legend</h4><ul><li>status: musl implementation status summary<ul><li>(empty) - implemented<li>nosym - prototype found in include files (see decl) but not in libc.a (see sym)<li>nodecl - symbol is in libc.a but not declared in a public header<li>missing - neither in include files (see decl) nor in libc.a (see sym)</ul><li>sym: external symbol kind as found by `nm libc.a` (symbol kind only reported once)<ul><li>C - symbol is common (uninitialized data)<li>D - symbol is in the initialized data section<li>R - symbol is in the read only data section<li>T - symbol is in the text section<li>V - weak object<li>W - weak symbol</ul><li>decl: kind of declaration as found by `ctags -R include` (every occurance is reported, arch specific definitions are not linked)<ul><li>d - macro definition<li>t - typedef<li>s - struct declaration<li>u - union declaration<li>p - function prototype<li>x - external and forward variable declaration</ul></ul>
 <h4>table</h4><table border=1><tr><th colspan=3>musl<th colspan=4>c99<tr><th>status<th>sym<th>decl<th>name<th>header<th>proto<th>section
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/assert.h#n3">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/assert.h#n6">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/assert.h#n8">d</a> <td>assert<td>assert.h<td>void assert(scalar expression);<td>B.1 Diagnostics
 <tr><td>&#160;<td>&#160;<td>d <td>SIGSEGV<td>signal.h<td>&#160;<td>B.13 Signal handling
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/signal.h#n246">p</a> <td>signal<td>signal.h<td>void (*signal(int sig, void (*func)(int)))(int);<td>B.13 Signal handling
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/signal.h#n247">p</a> <td>raise<td>signal.h<td>int raise(int sig);<td>B.13 Signal handling
-<tr><td>&#160;<td>&#160;<td>t t v v <td>va_list<td>stdarg.h<td>&#160;<td>B.14 Variable arguments
+<tr><td>&#160;<td>&#160;<td>t v <td>va_list<td>stdarg.h<td>&#160;<td>B.14 Variable arguments
 <tr><td>&#160;<td>&#160;<td>d <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdarg.h#n15">d</a> <td>va_arg<td>stdarg.h<td>type va_arg(va_list ap, type);<td>B.14 Variable arguments
 <tr><td>&#160;<td>&#160;<td>d <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdarg.h#n16">d</a> <td>va_copy<td>stdarg.h<td>void va_copy(va_list dest, va_list src);<td>B.14 Variable arguments
 <tr><td>&#160;<td>&#160;<td>d <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdarg.h#n14">d</a> <td>va_end<td>stdarg.h<td>void va_end(va_list ap);<td>B.14 Variable arguments
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdbool.h#n12">d</a> <td>__bool_true_false_are_defined<td>stdbool.h<td>&#160;<td>B.15 Boolean type and values
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/alltypes.h.in#n3">v</a> t <td>ptrdiff_t<td>stddef.h<td>&#160;<td>B.16 Common definitions
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/alltypes.h.in#n1">v</a> t <td>size_t<td>stddef.h<td>&#160;<td>B.16 Common definitions
-<tr><td>&#160;<td>&#160;<td>t <td>wchar_t<td>stddef.h<td>&#160;<td>B.16 Common definitions
+<tr><td>&#160;<td>&#160;<td>t <td>wchar_t<td>stddef.h<td>&#160;<td>B.16 Common definitions
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/locale.h#n11">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/locale.h#n13">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stddef.h#n5">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stddef.h#n7">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdio.h#n25">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdio.h#n27">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n11">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n13">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/string.h#n11">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/string.h#n13">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/time.h#n11">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/time.h#n13">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/unistd.h#n19">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/unistd.h#n21">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/wchar.h#n37">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/wchar.h#n39">d</a> <td>NULL<td>stddef.h<td>&#160;<td>B.16 Common definitions
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stddef.h#n20">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stddef.h#n22">d</a> <td>offsetof<td>stddef.h<td>offsetof(type, member-designator)<td>B.16 Common definitions
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/alltypes.h.in#n9">v</a> t <td>int8_t<td>stdint.h<td>&#160;<td>B.17 Integer types
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n63">t</a> <td>ldiv_t<td>stdlib.h<td>&#160;<td>B.19 General utilities
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n76">d</a> <td>EXIT_FAILURE<td>stdlib.h<td>&#160;<td>B.19 General utilities
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n79">d</a> <td>MB_CUR_MAX<td>stdlib.h<td>&#160;<td>B.19 General utilities
-<tr><td>&#160;<td>&#160;<td>t <td>wchar_t<td>stdlib.h<td>&#160;<td>B.19 General utilities
+<tr><td>&#160;<td>&#160;<td>t <td>wchar_t<td>stdlib.h<td>&#160;<td>B.19 General utilities
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n64">t</a> <td>lldiv_t<td>stdlib.h<td>&#160;<td>B.19 General utilities
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n77">d</a> <td>EXIT_SUCCESS<td>stdlib.h<td>&#160;<td>B.19 General utilities
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdlib.h#n62">t</a> <td>div_t<td>stdlib.h<td>&#160;<td>B.19 General utilities
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/time.h#n58">p</a> <td>gmtime<td>time.h<td>struct tm *gmtime(const time_t *timer);<td>B.22 Date and time
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/time.h#n59">p</a> <td>localtime<td>time.h<td>struct tm *localtime(const time_t *timer);<td>B.22 Date and time
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/time.h#n57">p</a> <td>strftime<td>time.h<td>size_t strftime(char * restrict s, size_t maxsize, const char * restrict format, const struct tm * restrict timeptr);<td>B.22 Date and time
-<tr><td>&#160;<td>&#160;<td>t <td>wchar_t<td>wchar.h<td>&#160;<td>B.23 Extended multibyte/wide character utilities
+<tr><td>&#160;<td>&#160;<td>t <td>wchar_t<td>wchar.h<td>&#160;<td>B.23 Extended multibyte/wide character utilities
 <tr><td>&#160;<td>&#160;<td>t v <td>wint_t<td>wchar.h<td>&#160;<td>B.23 Extended multibyte/wide character utilities
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/stdint.h#n85">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/stdint.h#n88">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/wchar.h#n29">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/wchar.h#n32">d</a> <td>WCHAR_MAX<td>wchar.h<td>&#160;<td>B.23 Extended multibyte/wide character utilities
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/alltypes.h.in#n1">v</a> t <td>size_t<td>wchar.h<td>&#160;<td>B.23 Extended multibyte/wide character utilities
index 7d8e4fd..3974f24 100755 (executable)
@@ -63,7 +63,7 @@ BEGIN {
                } else if (sym[$1]) {
                        s = s "nodecl"
                        nodecl++
-               } else if (kind[$1] ~ /[dtsu]/) {
+               } else if (kind[$1] ~ /[dtsue]/) {
                        s = s "&#160;"
                } else if (kind[$1]) {
                        s = s "nosym"
index 83ce849..53b7589 100644 (file)
@@ -1,5 +1,5 @@
 <h3>musl vs posix api</h3>
-<h4>commit</h4><p>commit <a href="http://git.musl-libc.org/cgit/musl/commit/?id=5edbc6fe13e1e0f27e3d3a20f2582da476f74c4b">5edbc6fe13e1e0f27e3d3a20f2582da476f74c4b</a><br>Date:   2014-09-10 12:47:55 -0400<br><br>    add _DEFAULT_SOURCE feature profile as an alias for _BSD_SOURCE<br>    <br>    as a result of commit ab8f6a6e42ff893041f7545a23e6d6a0edde07fb, this<br>    definition is now equivalent to the actual "default profile" which<br>    appears immediately below in features.h, and which defines both<br>    _BSD_SOURCE and _XOPEN_SOURCE.<br>    <br>    the intent of providing a _DEFAULT_SOURCE, which glibc also now<br>    provides, is to give applications a way to "get back" the default<br>    feature profile when it was lost either by compiler flags that inhibit<br>    it (such as -std=c99) or by library-provided predefined macros (such<br>    as -D_POSIX_C_SOURCE=200809L) which may inhibit exposure of features<br>    that were otherwise visible by default and which the application may<br>    need. without _DEFAULT_SOURCE, the application had encode knowledge of<br>    a particular libc's defaults, and such knowledge was fragile and<br>    subject to bitrot.<br>    <br>    eventually the names _GNU_SOURCE and _BSD_SOURCE should be phased out<br>    in favor of the more-descriptive and more-accurate _ALL_SOURCE and<br>    _DEFAULT_SOURCE, leaving the old names as aliases but using the new<br>    ones internally. however this is a more invasive change that would<br>    require extensive regression testing, so it is deferred.
+<h4>commit</h4><p>commit <a href="http://git.musl-libc.org/cgit/musl/commit/?id=00548408398ced546c540dab773ea66cea4fe1c2">00548408398ced546c540dab773ea66cea4fe1c2</a><br>Date:   2014-10-13 18:26:28 -0400<br><br>    eliminate global waiters count in pthread_once
 <h4>legend</h4><ul><li>status: musl implementation status summary<ul><li>(empty) - implemented<li>nosym - prototype found in include files (see decl) but not in libc.a (see sym)<li>nodecl - symbol is in libc.a but not declared in a public header<li>missing - neither in include files (see decl) nor in libc.a (see sym)</ul><li>sym: external symbol kind as found by `nm libc.a` (symbol kind only reported once)<ul><li>C - symbol is common (uninitialized data)<li>D - symbol is in the initialized data section<li>R - symbol is in the read only data section<li>T - symbol is in the text section<li>V - weak object<li>W - weak symbol</ul><li>decl: kind of declaration as found by `ctags -R include` (every occurance is reported)<ul><li>d - macro definition<li>p - function prototype<li>x - external and forward variable declaration</ul></ul><p>(STREAMS and posix_trace* apis are excluded)
 <h4>table</h4><table border=1><tr><th colspan=3>musl<th colspan=4>posix<tr><th>status<th>sym<th>decl<th>name<th>header<th>option<th>desc
 <tr><td>&#160;<td>&#160;<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/sys/select.h#n29">d</a> <td><a href="http://pubs.opengroup.org/onlinepubs/9699919799/functions/FD_CLR.html">FD_CLR</a><td> <a href="http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_select.h.html">sys/select.h</a><td>&#160;<td>pselect, select - synchronous I/O multiplexing
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/locale.h#n54">p</a> <td><a href="http://pubs.opengroup.org/onlinepubs/9699919799/functions/localeconv.html">localeconv</a><td> <a href="http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/locale.h.html">locale.h</a><td>&#160;<td>localeconv - return locale-specific information
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/time.h#n59">p</a> <td><a href="http://pubs.opengroup.org/onlinepubs/9699919799/functions/localtime.html">localtime</a><td> <a href="http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/time.h.html">time.h</a><td>&#160;<td>localtime, localtime_r - convert a time value to a broken-down local time
 <tr><td>&#160;<td>W<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/time.h#n75">p</a> <td><a href="http://pubs.opengroup.org/onlinepubs/9699919799/functions/localtime_r.html">localtime_r</a><td> <a href="http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/time.h.html">time.h</a><td> <a href="http://pubs.opengroup.org/onlinepubs/9699919799/help/codes.html#CX">CX</a><td>localtime, localtime_r - convert a time value to a broken-down local time
-<tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/fcntl.h#n133">p</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/unistd.h#n139">p</a> <td><a href="http://pubs.opengroup.org/onlinepubs/9699919799/functions/lockf.html">lockf</a><td> <a href="http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/unistd.h.html">unistd.h</a><td> <a href="http://pubs.opengroup.org/onlinepubs/9699919799/help/codes.html#XSI">XSI</a><td>lockf - record locking on files
+<tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/fcntl.h#n140">p</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/unistd.h#n139">p</a> <td><a href="http://pubs.opengroup.org/onlinepubs/9699919799/functions/lockf.html">lockf</a><td> <a href="http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/unistd.h.html">unistd.h</a><td> <a href="http://pubs.opengroup.org/onlinepubs/9699919799/help/codes.html#XSI">XSI</a><td>lockf - record locking on files
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/math.h#n247">p</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/tgmath.h#n182">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/tgmath.h#n245">d</a> <td><a href="http://pubs.opengroup.org/onlinepubs/9699919799/functions/log.html">log</a><td> <a href="http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/math.h.html">math.h</a><td>&#160;<td>log, logf, logl - natural logarithm function
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/math.h#n251">p</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/tgmath.h#n183">d</a> <a href="http://git.musl-libc.org/cgit/musl/tree/include/tgmath.h#n246">d</a> <td><a href="http://pubs.opengroup.org/onlinepubs/9699919799/functions/log10.html">log10</a><td> <a href="http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/math.h.html">math.h</a><td>&#160;<td>log10, log10f, log10l - base 10 logarithm function
 <tr><td>&#160;<td>T<td><a href="http://git.musl-libc.org/cgit/musl/tree/include/math.h#n252">p</a> <td><a href="http://pubs.opengroup.org/onlinepubs/9699919799/functions/log10f.html">log10f</a><td> <a href="http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/math.h.html">math.h</a><td>&#160;<td>log10, log10f, log10l - base 10 logarithm function