[libc-commits] [libc] 371e924 - [libc] added rest of yaml files for new headergen (#96977)

via libc-commits libc-commits at lists.llvm.org
Fri Jun 28 15:42:39 PDT 2024


Author: RoseZhang03
Date: 2024-06-28T22:42:35Z
New Revision: 371e924605a45bcdfcba1aca939f127338dd91d8

URL: https://github.com/llvm/llvm-project/commit/371e924605a45bcdfcba1aca939f127338dd91d8
DIFF: https://github.com/llvm/llvm-project/commit/371e924605a45bcdfcba1aca939f127338dd91d8.diff

LOG: [libc] added rest of yaml files for new headergen (#96977)

Added yaml files containing functions from only one standard.
Also added one combined standard yaml file (errno.yaml).
assert.yaml is still work in progress.

Added: 
    libc/newhdrgen/yaml/arpa_inet.yaml
    libc/newhdrgen/yaml/dirent.yaml
    libc/newhdrgen/yaml/errno.yaml
    libc/newhdrgen/yaml/fcntl.yaml
    libc/newhdrgen/yaml/float.yaml
    libc/newhdrgen/yaml/inttypes.yaml
    libc/newhdrgen/yaml/limits.yaml
    libc/newhdrgen/yaml/rpc.yaml
    libc/newhdrgen/yaml/search.yaml
    libc/newhdrgen/yaml/setjmp.yaml
    libc/newhdrgen/yaml/spawn.yaml
    libc/newhdrgen/yaml/stdbit.yaml
    libc/newhdrgen/yaml/stdckdint.yaml
    libc/newhdrgen/yaml/stdint.yaml
    libc/newhdrgen/yaml/sys_auxv.yaml
    libc/newhdrgen/yaml/sys_epoll.yaml
    libc/newhdrgen/yaml/sys_ioctl.yaml
    libc/newhdrgen/yaml/sys_prctl.yaml
    libc/newhdrgen/yaml/sys_random.yaml
    libc/newhdrgen/yaml/sys_resource.yaml
    libc/newhdrgen/yaml/sys_select.yaml
    libc/newhdrgen/yaml/sys_sendfile.yaml
    libc/newhdrgen/yaml/sys_socket.yaml
    libc/newhdrgen/yaml/sys_stat.yaml
    libc/newhdrgen/yaml/sys_statvfs.yaml
    libc/newhdrgen/yaml/sys_time.yaml
    libc/newhdrgen/yaml/sys_types.yaml
    libc/newhdrgen/yaml/sys_utsname.yaml
    libc/newhdrgen/yaml/termios.yaml
    libc/newhdrgen/yaml/threads.yaml
    libc/newhdrgen/yaml/uchar.yaml
    libc/newhdrgen/yaml/unistd.yaml
    libc/newhdrgen/yaml/wchar.yaml

Modified: 
    

Removed: 
    


################################################################################
diff  --git a/libc/newhdrgen/yaml/arpa_inet.yaml b/libc/newhdrgen/yaml/arpa_inet.yaml
new file mode 100644
index 0000000000000..945a602705dba
--- /dev/null
+++ b/libc/newhdrgen/yaml/arpa_inet.yaml
@@ -0,0 +1,33 @@
+header: arpa-inet.h
+macros: []
+types:
+  - type_name: uint32_t
+  - type_name: uint16_t
+  - type_name: inttypes.h
+enums: []
+objects: []
+functions:
+  - name: htonl
+    standards: 
+      - POSIX
+    return_type: uint32_t
+    arguments:
+      - type: uint32_t
+  - name: htons
+    standards: 
+      - POSIX
+    return_type: uint16_t
+    arguments:
+      - type: uint16_t
+  - name: ntohl
+    standards: 
+      - POSIX
+    return_type: uint32_t
+    arguments:
+      - type: uint32_t
+  - name: ntohs
+    standards: 
+      - POSIX
+    return_type: uint16_t
+    arguments:
+      - type: uint16_t

diff  --git a/libc/newhdrgen/yaml/dirent.yaml b/libc/newhdrgen/yaml/dirent.yaml
new file mode 100644
index 0000000000000..84a539a966345
--- /dev/null
+++ b/libc/newhdrgen/yaml/dirent.yaml
@@ -0,0 +1,46 @@
+header: dirent.h
+macros: []
+types:
+  - type_name: struct_dirent
+  - type_name: DIR
+  - type_name: ino_t
+enums: []
+objects: []
+functions:
+  - name: alphasort
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const struct dirent **
+      - type: const struct dirent **
+  - name: closedir
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: DIR *
+  - name: dirfd
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: DIR *
+  - name: fdopendir
+    standards: 
+      - POSIX
+    return_type: DIR *
+    arguments:
+      - type: int
+  - name: opendir
+    standards: 
+      - POSIX
+    return_type: DIR *
+    arguments:
+      - type: const char *
+  - name: readdir
+    standards: 
+      - POSIX
+    return_type: struct dirent *
+    arguments:
+      - type: DIR *

diff  --git a/libc/newhdrgen/yaml/errno.yaml b/libc/newhdrgen/yaml/errno.yaml
new file mode 100644
index 0000000000000..5d8de90f035bd
--- /dev/null
+++ b/libc/newhdrgen/yaml/errno.yaml
@@ -0,0 +1,10 @@
+header: errno.h
+standards: 
+  - stdc
+  - Linux
+  - POSIX
+macros: []
+types: []
+enums: []
+objects: []
+functions: []

diff  --git a/libc/newhdrgen/yaml/fcntl.yaml b/libc/newhdrgen/yaml/fcntl.yaml
new file mode 100644
index 0000000000000..3cb9741256a3d
--- /dev/null
+++ b/libc/newhdrgen/yaml/fcntl.yaml
@@ -0,0 +1,40 @@
+header: fcntl.h
+macros: []
+types: 
+  - type_name: off_t
+  - type_name: mode_t
+enums: []
+objects: []
+functions:
+  - name: creat
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *
+      - type: mode_t
+  - name: fcntl
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: int
+      - type: ...
+  - name: open
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *
+      - type: int
+      - type: ...
+  - name: openat
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: const char *
+      - type: int
+      - type: ...

diff  --git a/libc/newhdrgen/yaml/float.yaml b/libc/newhdrgen/yaml/float.yaml
new file mode 100644
index 0000000000000..fcbede018113c
--- /dev/null
+++ b/libc/newhdrgen/yaml/float.yaml
@@ -0,0 +1,8 @@
+header: float.h
+standards: 
+  - stdc
+macros: []
+types: []
+enums: []
+objects: []
+functions: []

diff  --git a/libc/newhdrgen/yaml/inttypes.yaml b/libc/newhdrgen/yaml/inttypes.yaml
new file mode 100644
index 0000000000000..772a1a0e06b21
--- /dev/null
+++ b/libc/newhdrgen/yaml/inttypes.yaml
@@ -0,0 +1,36 @@
+header: inttypes.h
+macros: 
+types:
+  - type_name: imaxdiv_t
+enums: []
+objects: []
+functions:
+  - name: imaxabs
+    standards: 
+      - stdc
+    return_type: intmax_t
+    arguments:
+      - type: intmax_t
+  - name: imaxdiv
+    standards: 
+      - stdc
+    return_type: imaxdiv_t
+    arguments:
+      - type: intmax_t
+      - type: intmax_t
+  - name: strtoimax
+    standards: 
+      - stdc
+    return_type: intmax_t
+    arguments:
+      - type: const char *__restrict
+      - type: char * *__restrict
+      - type: int
+  - name: strtoumax
+    standards: 
+      - stdc
+    return_type: uintmax_t
+    arguments:
+      - type: const char *__restrict
+      - type: char * *__restrict
+      - type: int

diff  --git a/libc/newhdrgen/yaml/limits.yaml b/libc/newhdrgen/yaml/limits.yaml
new file mode 100644
index 0000000000000..9d0f14fa3095d
--- /dev/null
+++ b/libc/newhdrgen/yaml/limits.yaml
@@ -0,0 +1,8 @@
+header: limits.h
+standards: 
+  - stdc
+macros: []
+types: []
+enums: []
+objects: []
+functions: []

diff  --git a/libc/newhdrgen/yaml/rpc.yaml b/libc/newhdrgen/yaml/rpc.yaml
new file mode 100644
index 0000000000000..8a096db8784ec
--- /dev/null
+++ b/libc/newhdrgen/yaml/rpc.yaml
@@ -0,0 +1,23 @@
+header: gpu-rpc.h
+macros: []
+types: []
+enums: []
+objects: []
+functions:
+  - name: rpc_host_call
+    standards: 
+      - GPUExtensions
+    return_type: void
+    arguments:
+      - type: void *
+      - type: void *
+      - type: size_t
+  - name: rpc_fprintf
+    standards: 
+      - GPUExtensions
+    return_type: int
+    arguments:
+      - type: ::FILE *__restrict
+      - type: const char *__restrict
+      - type: void *
+      - type: size_t

diff  --git a/libc/newhdrgen/yaml/search.yaml b/libc/newhdrgen/yaml/search.yaml
new file mode 100644
index 0000000000000..a7983a70bda73
--- /dev/null
+++ b/libc/newhdrgen/yaml/search.yaml
@@ -0,0 +1,60 @@
+header: search.h
+macros: []
+types:
+  - type_name: size_t
+  - type_name: struct_hsearch_data
+  - type_name: ENTRY
+  - type_name: ACTION
+enums: []
+objects: []
+functions:
+  - name: hcreate
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: size_t
+  - name: hcreate_r
+    standards: GNUExtensions
+    return_type: int
+    arguments:
+      - type: size_t
+      - type: struct hsearch_data *
+  - name: hsearch
+    standards: 
+      - POSIX
+    return_type: ENTRY *
+    arguments:
+      - type: ENTRY
+      - type: ACTION
+  - name: hsearch_r
+    standards: GNUExtensions
+    return_type: int
+    arguments:
+      - type: ENTRY
+      - type: ACTION
+      - type: ENTRY * *
+      - type: struct hsearch_data *
+  - name: hdestroy
+    standards: GNUExtensions 
+    return_type: void
+    arguments: []
+  - name: hdestroy_r
+    standards: 
+      - POSIX
+    return_type: void
+    arguments:
+      - type: struct hsearch_data *
+  - name: insque
+    standards: 
+      - POSIX
+    return_type: void
+    arguments:
+      - type: void *
+      - type: void *
+  - name: remque
+    standards: 
+      - POSIX
+    return_type: void
+    arguments:
+      - type: void *

diff  --git a/libc/newhdrgen/yaml/setjmp.yaml b/libc/newhdrgen/yaml/setjmp.yaml
new file mode 100644
index 0000000000000..c750b46fc2088
--- /dev/null
+++ b/libc/newhdrgen/yaml/setjmp.yaml
@@ -0,0 +1,20 @@
+header: setjmp.h
+macros: []
+types:
+  - type_name: jmp_buf
+enums: []
+objects: []
+functions:
+  - name: longjmp
+    standards: 
+      - stdc
+    return_type: _Noreturn void
+    arguments:
+      - type: jmp_buf 
+      - type: int
+  - name: setjmp
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: jmp_buf

diff  --git a/libc/newhdrgen/yaml/spawn.yaml b/libc/newhdrgen/yaml/spawn.yaml
new file mode 100644
index 0000000000000..86a2e624d4ef4
--- /dev/null
+++ b/libc/newhdrgen/yaml/spawn.yaml
@@ -0,0 +1,58 @@
+header: spawn.h
+macros: []
+types:
+  - type_name: posix_spawn_file_actions_t
+  - type_name: posix_spawnattr_t
+  - type_name: pid_t
+  - type_name: mode_t
+enums: []
+objects: []
+functions:
+  - name: posix_spawn
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: pid_t *__restrict
+      - type: const char *__restrict
+      - type: posix_spawn_file_actions_t *
+      - type: posix_spawnattr_t *__restrict
+      - type: const char *__restrict *
+      - type: const char *__restrict *
+  - name: posix_spawn_file_actions_addclose
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: posix_spawn_file_actions_t *
+      - type: int
+  - name: posix_spawn_file_actions_adddup2
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: posix_spawn_file_actions_t *
+      - type: int
+      - type: int
+  - name: posix_spawn_file_actions_addopen
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: posix_spawn_file_actions_t *__restrict
+      - type: int
+      - type: const char *__restrict
+      - type: int
+      - type: mode_t
+  - name: posix_spawn_file_actions_destroy
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: posix_spawn_file_actions_t *
+  - name: posix_spawn_file_actions_init
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: posix_spawn_file_actions_t *

diff  --git a/libc/newhdrgen/yaml/stdbit.yaml b/libc/newhdrgen/yaml/stdbit.yaml
new file mode 100644
index 0000000000000..7e1368df9de51
--- /dev/null
+++ b/libc/newhdrgen/yaml/stdbit.yaml
@@ -0,0 +1,396 @@
+header: stdbit.h
+macros: []
+types: []
+enums: []
+objects: []
+functions:
+  - name: stdc_leading_zeros_uc
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_leading_zeros_us
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_leading_zeros_ui
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_leading_zeros_ul
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_leading_zeros_ull
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_leading_ones_uc
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_leading_ones_us
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_leading_ones_ui
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_leading_ones_ul
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_leading_ones_ull
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_trailing_zeros_uc
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_trailing_zeros_us
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_trailing_zeros_ui
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_trailing_zeros_ul
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_trailing_zeros_ull
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_trailing_ones_uc
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_trailing_ones_us
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_trailing_ones_ui
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_trailing_ones_ul
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_trailing_ones_ull
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_first_leading_zero_uc
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_first_leading_zero_us
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_first_leading_zero_ui
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_first_leading_zero_ul
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_first_leading_zero_ull
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_first_leading_one_uc
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_first_leading_one_us
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_first_leading_one_ui
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_first_leading_one_ul
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_first_leading_one_ull
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_first_trailing_one_uc
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_first_trailing_one_us
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_first_trailing_one_ui
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_first_trailing_one_ul
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_first_trailing_one_ull
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_count_zeros_uc
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_count_zeros_us
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_count_zeros_ui
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_count_zeros_ul
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_count_zeros_ull
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_count_ones_uc
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_count_ones_us
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_count_ones_ui
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_count_ones_ul
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_count_ones_ull
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_has_single_bit_uc
+    standards: 
+      - stdc
+    return_type: bool
+    arguments:
+      - type: unsigned char
+  - name: stdc_has_single_bit_us
+    standards: 
+      - stdc
+    return_type: bool
+    arguments:
+      - type: unsigned short
+  - name: stdc_has_single_bit_ui
+    standards: 
+      - stdc
+    return_type: bool
+    arguments:
+      - type: unsigned int
+  - name: stdc_has_single_bit_ul
+    standards: 
+      - stdc
+    return_type: bool
+    arguments:
+      - type: unsigned long
+  - name: stdc_has_single_bit_ull
+    standards: 
+      - stdc
+    return_type: bool
+    arguments:
+      - type: unsigned long long
+  - name: stdc_bit_width_uc
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_bit_width_us
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_bit_width_ui
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_bit_width_ul
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_bit_width_ull
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_bit_floor_uc
+    standards: 
+      - stdc
+    return_type: unsigned char
+    arguments:
+      - type: unsigned char
+  - name: stdc_bit_floor_us
+    standards: 
+      - stdc
+    return_type: unsigned short
+    arguments:
+      - type: unsigned short
+  - name: stdc_bit_floor_ui
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_bit_floor_ul
+    standards: 
+      - stdc
+    return_type: unsigned long
+    arguments:
+      - type: unsigned long
+  - name: stdc_bit_floor_ull
+    standards: 
+      - stdc
+    return_type: unsigned long long
+    arguments:
+      - type: unsigned long long
+  - name: stdc_bit_ceil_uc
+    standards: 
+      - stdc
+    return_type: unsigned char
+    arguments:
+      - type: unsigned char
+  - name: stdc_bit_ceil_us
+    standards: 
+      - stdc
+    return_type: unsigned short
+    arguments:
+      - type: unsigned short
+  - name: stdc_bit_ceil_ui
+    standards: 
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_bit_ceil_ul
+    standards: 
+      - stdc
+    return_type: unsigned long
+    arguments:
+      - type: unsigned long
+  - name: stdc_bit_ceil_ull
+    standards: 
+      - stdc
+    return_type: unsigned long long
+    arguments:
+      - type: unsigned long long

diff  --git a/libc/newhdrgen/yaml/stdckdint.yaml b/libc/newhdrgen/yaml/stdckdint.yaml
new file mode 100644
index 0000000000000..5cc2e109e90e7
--- /dev/null
+++ b/libc/newhdrgen/yaml/stdckdint.yaml
@@ -0,0 +1,8 @@
+header: stdckdint.h
+standards: 
+  - stdc
+macros: []
+types: []
+enums: []
+objects: []
+functions: []

diff  --git a/libc/newhdrgen/yaml/stdint.yaml b/libc/newhdrgen/yaml/stdint.yaml
new file mode 100644
index 0000000000000..5f613e1daa67f
--- /dev/null
+++ b/libc/newhdrgen/yaml/stdint.yaml
@@ -0,0 +1,8 @@
+header: stdint.h
+standards: 
+  - stdc
+macros: []
+types: []
+enums: []
+objects: []
+functions: []

diff  --git a/libc/newhdrgen/yaml/sys_auxv.yaml b/libc/newhdrgen/yaml/sys_auxv.yaml
new file mode 100644
index 0000000000000..beea1d8b5f09f
--- /dev/null
+++ b/libc/newhdrgen/yaml/sys_auxv.yaml
@@ -0,0 +1,8 @@
+header: sys-auxv.h
+standards: 
+  - GNUExtensions
+macros: []
+types: []
+enums: []
+objects: []
+functions: []

diff  --git a/libc/newhdrgen/yaml/sys_epoll.yaml b/libc/newhdrgen/yaml/sys_epoll.yaml
new file mode 100644
index 0000000000000..18d8f59de15f1
--- /dev/null
+++ b/libc/newhdrgen/yaml/sys_epoll.yaml
@@ -0,0 +1,60 @@
+header: sys-epoll.h
+macros: []
+types:
+  - type_name: struct_epoll_event
+  - type_name: struct_epoll_data
+  - type_name: sigset_t
+  - type_name: struct_timespec
+enums: []
+objects: []
+functions:
+  - name: epoll_create
+    standards: 
+      - Linux
+    return_type: int
+    arguments:
+      - type: int
+  - name: epoll_create1
+    standards: 
+      - Linux
+    return_type: int
+    arguments:
+      - type: int
+  - name: epoll_ctl
+    standards: 
+      - Linux
+    return_type: int
+    arguments:
+      - type: int
+      - type: int
+      - type: int
+      - type: struct epoll_event *
+  - name: epoll_wait
+    standards: 
+      - Linux
+    return_type: int
+    arguments:
+      - type: int
+      - type: struct epoll_event *
+      - type: int
+      - type: int
+  - name: epoll_pwait
+    standards: 
+      - Linux
+    return_type: int
+    arguments:
+      - type: int
+      - type: struct epoll_event *
+      - type: int
+      - type: int
+      - type: const sigset_t *
+  - name: epoll_pwait2
+    standards: 
+      - Linux
+    return_type: int
+    arguments:
+      - type: int
+      - type: struct epoll_event *
+      - type: int
+      - type: const struct timespec *
+      - type: const sigset_t *

diff  --git a/libc/newhdrgen/yaml/sys_ioctl.yaml b/libc/newhdrgen/yaml/sys_ioctl.yaml
new file mode 100644
index 0000000000000..ffe73a84d51b9
--- /dev/null
+++ b/libc/newhdrgen/yaml/sys_ioctl.yaml
@@ -0,0 +1,7 @@
+header: sys-ioctl.h
+standards: POSIX
+macros: []
+types: []
+enums: []
+objects: []
+functions: []

diff  --git a/libc/newhdrgen/yaml/sys_prctl.yaml b/libc/newhdrgen/yaml/sys_prctl.yaml
new file mode 100644
index 0000000000000..35289f6274e7a
--- /dev/null
+++ b/libc/newhdrgen/yaml/sys_prctl.yaml
@@ -0,0 +1,7 @@
+header: sys-prctl.h
+standards: Linux
+macros: []
+types: []
+enums: []
+objects: []
+functions: []

diff  --git a/libc/newhdrgen/yaml/sys_random.yaml b/libc/newhdrgen/yaml/sys_random.yaml
new file mode 100644
index 0000000000000..233fb2c7988cb
--- /dev/null
+++ b/libc/newhdrgen/yaml/sys_random.yaml
@@ -0,0 +1,16 @@
+header: sys-random.h
+macros: []
+types:
+  - type_name: ssize_t
+  - type_name: size_t
+enums: []
+objects:
+functions:
+  - name: getrandom
+    standards: 
+      - Linux
+    return_type: ssize_t
+    arguments:
+      - type: void *
+      - type: size_t
+      - type: unsigned int

diff  --git a/libc/newhdrgen/yaml/sys_resource.yaml b/libc/newhdrgen/yaml/sys_resource.yaml
new file mode 100644
index 0000000000000..2cc801c823ed1
--- /dev/null
+++ b/libc/newhdrgen/yaml/sys_resource.yaml
@@ -0,0 +1,20 @@
+header: sys-resource.h
+macros: []
+types:
+  - type_name: struct_rlimit
+  - type_name: rlim_t
+enums: []
+objects: []
+functions:
+  - name: getrlimit
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: struct rlimit *
+  - name: setrlimit
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const struct rlimit

diff  --git a/libc/newhdrgen/yaml/sys_select.yaml b/libc/newhdrgen/yaml/sys_select.yaml
new file mode 100644
index 0000000000000..eb621f7d14750
--- /dev/null
+++ b/libc/newhdrgen/yaml/sys_select.yaml
@@ -0,0 +1,22 @@
+header: sys-select.h
+macros: []
+types:
+  - type_name: struct_timeval
+  - type_name: struct_timespec
+  - type_name: suseconds_t
+  - type_name: sigset_t
+  - type_name: time_t
+  - type_name: fd_set
+enums: []
+objects: []
+functions:
+  - name: select
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: fd_set *__restrict
+      - type: fd_set *__restrict
+      - type: fd_set *__restrict
+      - type: struct timeval *__restrict

diff  --git a/libc/newhdrgen/yaml/sys_sendfile.yaml b/libc/newhdrgen/yaml/sys_sendfile.yaml
new file mode 100644
index 0000000000000..8743bf01b99ba
--- /dev/null
+++ b/libc/newhdrgen/yaml/sys_sendfile.yaml
@@ -0,0 +1,18 @@
+header: sys-sendfile.h
+macros: []
+types:
+  - type_name: ssize_t
+  - type_name: size_t
+  - type_name: off_t
+enums: []
+objects: []
+functions: 
+  - name: sendfile
+    standards: 
+      - GNUExtensions
+    return_type: ssize_t
+    arguments: 
+      - type: int 
+      - type: int 
+      - type: off_t * 
+      - type: size_t 

diff  --git a/libc/newhdrgen/yaml/sys_socket.yaml b/libc/newhdrgen/yaml/sys_socket.yaml
new file mode 100644
index 0000000000000..f9984c638ceae
--- /dev/null
+++ b/libc/newhdrgen/yaml/sys_socket.yaml
@@ -0,0 +1,26 @@
+header: sys-socket.h
+macros: []
+types:
+  - type_name: struct_sockaddr_un
+  - type_name: struct_sockaddr
+  - type_name: socklen_t
+  - type_name: sa_family_t
+enums: []
+objects: []
+functions:
+  - name: socket
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: int
+      - type: int
+  - name: bind
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: const struct sockaddr *
+      - type: socklen_t

diff  --git a/libc/newhdrgen/yaml/sys_stat.yaml b/libc/newhdrgen/yaml/sys_stat.yaml
new file mode 100644
index 0000000000000..6ae69b4f870a2
--- /dev/null
+++ b/libc/newhdrgen/yaml/sys_stat.yaml
@@ -0,0 +1,77 @@
+header: sys-stat.h
+macros: []
+types:
+  - type_name: blkcnt_t
+  - type_name: blksize_t
+  - type_name: off_t
+  - type_name: struct_timeval
+  - type_name: gid_t
+  - type_name: struct_stat
+  - type_name: uid_t
+  - type_name: nlink_t
+  - type_name: dev_t
+  - type_name: struct_timespec
+  - type_name: ino_t
+  - type_name: mode_t
+enums: []
+objects: []
+functions:
+  - name: chmod
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *
+      - type: mode_t
+  - name: fchmod
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: mode_t
+  - name: fchmodat
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: const char *
+      - type: mode_t
+      - type: int
+  - name: fstat
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: struct stat *
+  - name: lstat
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *__restrict
+      - type: struct stat *__restrict
+  - name: mkdir
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *
+      - type: mode_t
+  - name: mkdirat
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: const char *
+      - type: mode_t
+  - name: stat
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *__restrict
+      - type: struct stat *__restrict

diff  --git a/libc/newhdrgen/yaml/sys_statvfs.yaml b/libc/newhdrgen/yaml/sys_statvfs.yaml
new file mode 100644
index 0000000000000..3651901e9f2c7
--- /dev/null
+++ b/libc/newhdrgen/yaml/sys_statvfs.yaml
@@ -0,0 +1,21 @@
+header: sys-statvfs.h
+macros: []
+types:
+  - type_name: struct_statvfs
+enums: []
+objects: []
+functions:
+  - name: statvfs
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *__restrict
+      - type: struct statvfs *__restrict
+  - name: fstatvfs
+    standards: 
+      - POSIX
+    return_type: int
+    arguments: 
+      - type: int
+      - type: struct statvfs *

diff  --git a/libc/newhdrgen/yaml/sys_time.yaml b/libc/newhdrgen/yaml/sys_time.yaml
new file mode 100644
index 0000000000000..a901cdafd26a1
--- /dev/null
+++ b/libc/newhdrgen/yaml/sys_time.yaml
@@ -0,0 +1,8 @@
+header: sys-time.h
+standards: Linux
+macros: []
+types:
+  - type_name: struct_timeval
+enums: []
+functions: []
+objects: []

diff  --git a/libc/newhdrgen/yaml/sys_types.yaml b/libc/newhdrgen/yaml/sys_types.yaml
new file mode 100644
index 0000000000000..6b08254a7fab1
--- /dev/null
+++ b/libc/newhdrgen/yaml/sys_types.yaml
@@ -0,0 +1,30 @@
+header: sys-types.h
+standards: POSIX
+macros: []
+types:
+  - type_name: uid_t
+  - type_name: time_t
+  - type_name: pthread_t
+  - type_name: pthread_rwlockattr_t
+  - type_name: pthread_mutex_t
+  - type_name: blkcnt_t
+  - type_name: blksize_t
+  - type_name: clockid_t
+  - type_name: ssize_t
+  - type_name: pthread_mutexattr_t
+  - type_name: ino_t
+  - type_name: pthread_once_t
+  - type_name: mode_t
+  - type_name: dev_t
+  - type_name: pthread_attr_t
+  - type_name: gid_t
+  - type_name: pid_t
+  - type_name: nlink_t
+  - type_name: suseconds_t
+  - type_name: off_t
+  - type_name: size_t
+  - type_name: pthread_key_t
+  - type_name: pthread_condattr_t
+enums: []
+functions: []
+objects: []

diff  --git a/libc/newhdrgen/yaml/sys_utsname.yaml b/libc/newhdrgen/yaml/sys_utsname.yaml
new file mode 100644
index 0000000000000..c48f7e3270748
--- /dev/null
+++ b/libc/newhdrgen/yaml/sys_utsname.yaml
@@ -0,0 +1,13 @@
+header: sys-utsname.h
+macros: []
+types:
+  - type_name: struct_utsname
+enums: []
+objects: []
+functions:
+  - name: uname
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: struct utsname *

diff  --git a/libc/newhdrgen/yaml/termios.yaml b/libc/newhdrgen/yaml/termios.yaml
new file mode 100644
index 0000000000000..17986f8c0fc63
--- /dev/null
+++ b/libc/newhdrgen/yaml/termios.yaml
@@ -0,0 +1,85 @@
+header: termios.h
+macros: []
+types:
+  - type_name: tcflag_t
+  - type_name: struct_termios
+  - type_name: speed_t
+  - type_name: pid_t
+  - type_name: cc_t
+enums: []
+objects: []
+functions:
+  - name: cfgetispeed
+    standards: 
+      - POSIX
+    return_type: speed_t
+    arguments:
+      - type: const struct termios *
+  - name: cfgetospeed
+    standards: 
+      - POSIX
+    return_type: speed_t
+    arguments:
+      - type: const struct termios *
+  - name: cfsetispeed
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: struct termios *
+      - type: speed_t
+  - name: cfsetospeed
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: struct termios *
+      - type: speed_t
+  - name: tcgetattr
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: struct termios *
+  - name: tcgetsid
+    standards: 
+      - POSIX
+    return_type: pid_t
+    arguments:
+      - type: int
+  - name: tcdrain
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+  - name: tcflow
+    standards: 
+      - POSIX 
+    return_type: int
+    arguments:
+      - type: int
+      - type: int
+  - name: tcflush
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: int
+  - name: tcsendbreak
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: int
+  - name: tcsetattr
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: int
+      - type: struct termios *

diff  --git a/libc/newhdrgen/yaml/threads.yaml b/libc/newhdrgen/yaml/threads.yaml
new file mode 100644
index 0000000000000..ef472af8bfd32
--- /dev/null
+++ b/libc/newhdrgen/yaml/threads.yaml
@@ -0,0 +1,148 @@
+header: threads.h
+macros:
+  - macro_name: ONCE_FLAG_INIT
+    macro_value: "{0}"
+types:
+  - type_name: once_flag
+  - type_name: __call_once_func_t
+  - type_name: cnd_t
+  - type_name: mtx_t
+  - type_name: thrd_start_t
+  - type_name: thrd_t
+  - type_name: tss_t
+  - type_name: tss_dtor_t
+enums:
+  - name: mtx_plain
+    value: null
+  - name: mtx_recursive
+    value: null
+  - name: mtx_timed
+    value: null
+  - name: thrd_timedout
+    value: null
+  - name: thrd_success
+    value: null
+  - name: thrd_busy
+    value: null
+  - name: thrd_error
+    value: null
+  - name: thrd_nomem
+    value: null
+objects: []
+functions:
+  - name: call_once
+    standards: 
+      - stdc
+    return_type: void
+    arguments:
+      - type: once_flag *
+      - type: __call_once_func_t
+  - name: cnd_broadcast
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: cnd_t *
+  - name: cnd_destroy
+    standards: 
+      - stdc
+    return_type: void
+    arguments:
+      - type: cnd_t *
+  - name: cnd_init
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: cnd_t *
+  - name: cnd_signal
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: cnd_t *
+  - name: cnd_wait
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: cnd_t *
+      - type: mtx_t *
+  - name: mtx_init
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: mtx_t *
+      - type: int
+  - name: mtx_destroy
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: void
+  - name: mtx_lock
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: mtx_t *
+  - name: mtx_unlock
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: mtx_t *
+  - name: thrd_create
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: thrd_t *
+      - type: thrd_start_t
+      - type: void *
+  - name: thrd_join
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: thrd_t
+      - type: int *
+  - name: thrd_detach
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: thrd_t
+  - name: thrd_current
+    standards: 
+      - stdc
+    return_type: thrd_t
+    arguments:
+      - type: void
+  - name: thrd_equal
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: thrd_t
+      - type: thrd_t
+  - name: thrd_exit
+    standards: 
+      - stdc
+    return_type: void
+    arguments:
+      - type: int
+  - name: tss_create
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: tss_t *
+      - type: tss_dtor_t
+  - name: tss_delete
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: tss_t

diff  --git a/libc/newhdrgen/yaml/uchar.yaml b/libc/newhdrgen/yaml/uchar.yaml
new file mode 100644
index 0000000000000..a73da17acdeac
--- /dev/null
+++ b/libc/newhdrgen/yaml/uchar.yaml
@@ -0,0 +1,12 @@
+header: uchar.h
+standards: 
+  - stdc
+macros: []
+types:
+  - type_name: char32_t
+  - type_name: char16_t
+  - type_name: char8_t
+  - type_name: mbstate_t
+enums: []
+objects: []
+functions: []

diff  --git a/libc/newhdrgen/yaml/unistd.yaml b/libc/newhdrgen/yaml/unistd.yaml
new file mode 100644
index 0000000000000..511746aa19e85
--- /dev/null
+++ b/libc/newhdrgen/yaml/unistd.yaml
@@ -0,0 +1,329 @@
+header: unistd.h
+macros: []
+types:
+  - type_name: uid_t
+  - type_name: ssize_t
+  - type_name: size_t
+  - type_name: pid_t
+  - type_name: off_t
+  - type_name: __getoptargv_t
+  - type_name: __exec_envp_t
+  - type_name: __exec_argv_t
+enums: []
+objects:
+  - object_name: environ
+    object_type: char **
+  - object_name: optarg
+    object_type: char *
+  - object_name: optind
+    object_type: int
+  - object_name: opterr
+    object_type: int
+  - object_name: optopt
+    object_type: int
+functions:
+  - name: access
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *
+      - type: int
+  - name: chdir
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *
+  - name: close
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+  - name: dup
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+  - name: dup2
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: int
+  - name: dup3
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: int
+      - type: int
+  - name: execve
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *
+      - type: __exec_argv_t
+      - type: __exec_envp_t
+  - name: fchdir
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+  - name: fsync
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+  - name: ftruncate
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: off_t
+  - name: getcwd
+    standards: 
+      - POSIX
+    return_type: char *
+    arguments:
+      - type: char *
+      - type: size_t
+  - name: geteuid
+    standards: 
+      - POSIX
+    return_type: uid_t
+    arguments: []
+  - name: getpid
+    standards: 
+      - POSIX
+    return_type: int
+    arguments: []
+  - name: getppid
+    standards: 
+      - POSIX
+    return_type: int
+    arguments: []
+  - name: getuid
+    standards: 
+      - POSIX
+    return_type: uid_t
+    arguments: []
+  - name: isatty
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+    guard: null
+    attributes: []
+  - name: link
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *
+      - type: const char *
+  - name: linkat
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: const char *
+      - type: int
+      - type: const char *
+      - type: int
+  - name: lseek 
+    standards: 
+      - POSIX
+    return_type: off_t
+    arguments:
+      - type: int
+      - type: off_t
+      - type: int
+  - name: pipe
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int *
+  - name: pread
+    standards: 
+      - POSIX
+    return_type: ssize_t
+    arguments:
+      - type: int
+      - type: void *
+      - type: size_t
+      - type: off_t
+  - name: pwrite
+    standards: 
+      - POSIX
+    return_type: ssize_t
+    arguments:
+      - type: int
+      - type: const void *
+      - type: size_t
+      - type: off_t
+  - name: read
+    standards: 
+      - POSIX
+    return_type: ssize_t
+    arguments:
+      - type: int
+      - type: void *
+      - type: size_t
+  - name: readlink
+    standards: 
+      - POSIX
+    return_type: ssize_t
+    arguments:
+      - type: const char * __restrict
+      - type: char * __restrict
+      - type: size_t
+  - name: readlinkat
+    standards: 
+      - POSIX
+    return_type: ssize_t
+    arguments:
+      - type: const char * __restrict
+      - type: char * __restrict
+      - type: size_t
+  - name: rmdir
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *
+  - name: symlink
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *
+      - type: const char *
+  - name: symlinkat
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: const char *
+      - type: int
+      - type: const char *
+  - name: sysconf
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+  - name: truncate
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *
+      - type: off_t
+  - name: unlink
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *
+  - name: unlinkat
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: const char *
+      - type: int
+  - name: write
+    standards: 
+      - POSIX
+    return_type: ssize_t
+    arguments:
+      - type: int
+      - type: const void *
+      - type: size_t
+    guard: null
+    attributes: []
+  - name: _exit
+    standards: 
+      - POSIX
+    return_type: _Noreturn void
+    arguments:
+      - type: int
+  - name: execv
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *
+      - type: __exec_argv_t
+  - name: fork
+    standards: 
+      - POSIX
+    return_type: pid_t
+    arguments: []
+  - name: __llvm_libc_syscall
+    standards: 
+      - POSIX
+    return_type: long
+    arguments:
+      - type: long
+      - type: long
+      - type: long
+      - type: long
+      - type: long
+      - type: long
+      - type: long
+  - name: getopt
+    standards: 
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: __getoptargv_t
+      - type: const char *
+  - name: swab
+    standards: 
+      - POSIX
+    return_type: void
+    arguments:
+      - type: const void * __restrict
+      - type: void *
+      - type: ssize_t
+  - name: enivron
+    standards: 
+      - POSIX
+    return_type: extern char **
+    arguments: []
+  - name: optarg
+    standards: 
+      - POSIX
+    return_type: extern char *
+    arguments: []
+  - name: optind
+    standards: 
+      - POSIX
+    return_type: extern int 
+    arguments: []
+  - name: optopt
+    standards: 
+      - POSIX
+    return_type: extern int 
+    arguments: []
+  - name: opterr
+    standards: 
+      - POSIX
+    return_type: extern int 
+    arguments: []

diff  --git a/libc/newhdrgen/yaml/wchar.yaml b/libc/newhdrgen/yaml/wchar.yaml
new file mode 100644
index 0000000000000..663267fb69d73
--- /dev/null
+++ b/libc/newhdrgen/yaml/wchar.yaml
@@ -0,0 +1,15 @@
+header: wchar.h
+macros: []
+types:
+  - type_name: size_t
+  - type_name: wint_t
+  - type_name: wchar_t
+enums: []
+objects: []
+functions:
+  - name: wctob
+    standards: 
+      - stdc
+    return_type: int
+    arguments:
+      - type: wint_t


        


More information about the libc-commits mailing list