llvm-project/libc/include/string.yaml
Victor Campos 2baa2cdce9
[libc] Follow up on Annex K's rsize_t (#187707)
- Fix header guard name.
- Define `__STDC_WANT_LIB_EXT1__` in `hdr/types/rsize_t.h` so that the
type is available for internal use.
- In accordance to the standard, make `stdio.h`, `stdlib.h`, `string.h`,
`time.h` and `wchar.h` define the type. It should already be available
in `stddef.h` as it's provided by Clang, not LLVM libc.
2026-03-25 13:16:34 +00:00

327 lines
6.4 KiB
YAML

header: string.h
standards:
- stdc
macros:
- macro_name: "NULL"
macro_header: null-macro.h
types:
- type_name: errno_t
- type_name: locale_t
- type_name: rsize_t
- type_name: size_t
enums: []
objects: []
functions:
- name: memccpy
standards:
- posix
return_type: void *
arguments:
- type: void *__restrict
- type: const void *__restrict
- type: int
- type: size_t
- name: memchr
standards:
- stdc
return_type: void *
arguments:
- type: const void *
- type: int
- type: size_t
- name: memcmp
standards:
- stdc
return_type: int
arguments:
- type: const void *
- type: const void *
- type: size_t
- name: memcpy
standards:
- stdc
return_type: void *
arguments:
- type: void *__restrict
- type: const void *__restrict
- type: size_t
- name: memmem
standards:
- GNUExtensions
return_type: void *
arguments:
- type: const void *
- type: size_t
- type: const void *
- type: size_t
- name: memmove
standards:
- stdc
return_type: void *
arguments:
- type: void *
- type: const void *
- type: size_t
- name: mempcpy
standards:
- posix
return_type: void *
arguments:
- type: void *__restrict
- type: const void *__restrict
- type: size_t
- name: memrchr
standards:
- GNUExtensions
return_type: void *
arguments:
- type: const void *
- type: int
- type: size_t
- name: memset
standards:
- stdc
return_type: void *
arguments:
- type: void *
- type: int
- type: size_t
- name: memset_explicit
standards:
- stdc
return_type: void *
arguments:
- type: void *
- type: int
- type: size_t
- name: stpcpy
standards:
- posix
return_type: char *
arguments:
- type: char *__restrict
- type: const char *__restrict
- name: stpncpy
standards:
- posix
return_type: char *
arguments:
- type: char *__restrict
- type: const char *__restrict
- type: size_t
- name: strcasestr
standards:
- GNUExtensions
return_type: char *
arguments:
- type: const char *
- type: const char *
- name: strcat
standards:
- stdc
return_type: char *
arguments:
- type: char *__restrict
- type: const char *__restrict
- name: strchr
standards:
- stdc
return_type: char *
arguments:
- type: const char *
- type: int
- name: strchrnul
standards:
- GNUExtensions
return_type: char *
arguments:
- type: const char *
- type: int
- name: strcmp
standards:
- stdc
return_type: int
arguments:
- type: const char *
- type: const char *
- name: strcoll
standards:
- stdc
return_type: int
arguments:
- type: const char *
- type: const char *
- name: strcoll_l
standards:
- stdc
return_type: int
arguments:
- type: const char *
- type: const char *
- type: locale_t
- name: strcpy
standards:
- stdc
return_type: char *
arguments:
- type: char *__restrict
- type: const char *__restrict
- name: strcspn
standards:
- stdc
return_type: size_t
arguments:
- type: const char *
- type: const char *
- name: strdup
return_type: char *
arguments:
- type: const char *
- name: strerror
standards:
- stdc
return_type: char *
arguments:
- type: int
- name: strerror_r
standards:
- GNUExtensions
return_type: char *
arguments:
- type: int
- type: char *
- type: size_t
- name: strlcat
standards:
- BSDExtensions
return_type: size_t
arguments:
- type: char *__restrict
- type: const char *__restrict
- type: size_t
- name: strlcpy
standards:
- BSDExtensions
return_type: size_t
arguments:
- type: char *__restrict
- type: const char *__restrict
- type: size_t
- name: strlen
standards:
- stdc
return_type: size_t
arguments:
- type: const char *
- name: strncat
standards:
- stdc
return_type: char *
arguments:
- type: char *
- type: const char *
- type: size_t
- name: strncmp
standards:
- stdc
return_type: int
arguments:
- type: const char *
- type: const char *
- type: size_t
- name: strncpy
standards:
- stdc
return_type: char *
arguments:
- type: char *__restrict
- type: const char *__restrict
- type: size_t
- name: strndup
standards:
- stdc
return_type: char *
arguments:
- type: const char *
- type: size_t
- name: strnlen
standards:
- posix
return_type: size_t
arguments:
- type: const char *
- type: size_t
- name: strpbrk
standards:
- stdc
return_type: char *
arguments:
- type: const char *
- type: const char *
- name: strrchr
standards:
- stdc
return_type: char *
arguments:
- type: const char *
- type: int
- name: strsep
standards:
- BSDExtensions
return_type: char *
arguments:
- type: char **__restrict
- type: const char *__restrict
- name: strsignal
standards:
- posix
return_type: char *
arguments:
- type: int
- name: strspn
standards:
- stdc
return_type: size_t
arguments:
- type: const char *
- type: const char *
- name: strstr
standards:
- stdc
return_type: char *
arguments:
- type: const char *
- type: const char *
- name: strtok
standards:
- stdc
return_type: char *
arguments:
- type: char *__restrict
- type: const char *__restrict
- name: strtok_r
standards:
- posix
return_type: char *
arguments:
- type: char *__restrict
- type: const char *__restrict
- type: char ** __restrict
- name: strxfrm
standards:
- stdc
return_type: size_t
arguments:
- type: char *__restrict
- type: const char *__restrict
- type: size_t
- name: strxfrm_l
standards:
- stdc
return_type: size_t
arguments:
- type: char *__restrict
- type: const char *__restrict
- type: size_t
- type: locale_t