cosmopolitan/libc/str
Justine Tunney a8d7195777 Make Cosmopolitan ANSI C89 compatible
You can now use cosmopolitan.h with an ANSI C89 compiler like MSVC. The
Cosmopolitan codebase itself won't support being compiled that way. But
you can build objects that link against Cosmopolitan using any compiler
and you can furthermore use tools like IntelliSense that can't even GNU

See also #40
2021-02-03 17:48:59 -08:00
..
bcmp.c Implement getcwd() for XNU 2021-01-30 08:54:12 -08:00
bcopy.c Change license 2020-12-27 17:18:44 -08:00
bsf.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
bsfl.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
bsfll.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
bsr.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
bsrl.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
bsrll.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
chomp.c Fix XNU / FreeBSD / OpenBSD / RHEL5 / NT bugs 2021-01-25 18:31:17 -08:00
chomp16.c Change license 2020-12-27 17:18:44 -08:00
crc32.S Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
crc32c-pure.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
crc32c-sse42.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
crc32c.S Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
crc32z.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
decodentsutf16.c Change license 2020-12-27 17:18:44 -08:00
djbsort.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
endswith.c Change license 2020-12-27 17:18:44 -08:00
endswith16.c Change license 2020-12-27 17:18:44 -08:00
escapedos.c Change license 2020-12-27 17:18:44 -08:00
getcachesize.c Change license 2020-12-27 17:18:44 -08:00
getutf16.ncabi.c Change license 2020-12-27 17:18:44 -08:00
getx86processormodel.c Change license 2020-12-27 17:18:44 -08:00
hextoint.c Change license 2020-12-27 17:18:44 -08:00
highwayhash64.c Hunt down some small bugs 2020-12-24 16:01:48 -08:00
highwayhash64.h Hunt down some small bugs 2020-12-24 16:01:48 -08:00
iconv.c Work towards improving signals and processes 2021-01-27 19:34:02 -08:00
index.c Make more functions friendly to Address Sanitizer 2021-02-02 03:45:31 -08:00
indexdoublenulstring.c Change license 2020-12-27 17:18:44 -08:00
insertionsort.greg.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
internal.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
isalnum.c Change license 2020-12-27 17:18:44 -08:00
isalpha.c Change license 2020-12-27 17:18:44 -08:00
isascii.c Change license 2020-12-27 17:18:44 -08:00
isblank.c Change license 2020-12-27 17:18:44 -08:00
iscntrl.c Change license 2020-12-27 17:18:44 -08:00
isdigit.c Change license 2020-12-27 17:18:44 -08:00
isgraph.c Change license 2020-12-27 17:18:44 -08:00
islower.c Change license 2020-12-27 17:18:44 -08:00
isprint.c Change license 2020-12-27 17:18:44 -08:00
ispunct.c Change license 2020-12-27 17:18:44 -08:00
isspace.c Change license 2020-12-27 17:18:44 -08:00
isupper.c Change license 2020-12-27 17:18:44 -08:00
iswalnum.c Change license 2020-12-27 17:18:44 -08:00
iswalpha.c Change license 2020-12-27 17:18:44 -08:00
iswblank.c Change license 2020-12-27 17:18:44 -08:00
iswcntrl.c Change license 2020-12-27 17:18:44 -08:00
iswctype.c Change license 2020-12-27 17:18:44 -08:00
iswdigit.c Change license 2020-12-27 17:18:44 -08:00
iswgraph.c Change license 2020-12-27 17:18:44 -08:00
iswlower.c Change license 2020-12-27 17:18:44 -08:00
iswprint.c Change license 2020-12-27 17:18:44 -08:00
iswpunct.c Change license 2020-12-27 17:18:44 -08:00
iswspace.c Change license 2020-12-27 17:18:44 -08:00
iswupper.c Change license 2020-12-27 17:18:44 -08:00
iswxdigit.c Change license 2020-12-27 17:18:44 -08:00
isxdigit.c Change license 2020-12-27 17:18:44 -08:00
kx86processormodels.c Change license 2020-12-27 17:18:44 -08:00
lz4check.c Change license 2020-12-27 17:18:44 -08:00
lz4cpy.c Make ANSI mode closer to being ANSI 2021-02-03 17:14:17 -08:00
lz4decode.c Change license 2020-12-27 17:18:44 -08:00
mbtowc.c Change license 2020-12-27 17:18:44 -08:00
memccpy.c Implement more security stuff 2021-02-02 20:21:06 -08:00
memchr.c Make more functions friendly to Address Sanitizer 2021-02-02 03:45:31 -08:00
memcmp.c Change license 2020-12-27 17:18:44 -08:00
memfrob.c Change license 2020-12-27 17:18:44 -08:00
memmem.c Fix XNU / FreeBSD / OpenBSD / RHEL5 / NT bugs 2021-01-25 18:31:17 -08:00
memmove-pure.c Make more functions friendly to Address Sanitizer 2021-02-02 03:45:31 -08:00
memset-pure.c Make more functions friendly to Address Sanitizer 2021-02-02 03:45:31 -08:00
memset16.c Change license 2020-12-27 17:18:44 -08:00
oldutf16.internal.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
pututf16.ncabi.c Implement more security stuff 2021-02-02 20:21:06 -08:00
rawmemchr.c Implement more security stuff 2021-02-02 20:21:06 -08:00
rindex.S Change license 2020-12-27 17:18:44 -08:00
sha256.c Improve documentation 2020-12-27 07:02:35 -08:00
sha256.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
startswith.c Change license 2020-12-27 17:18:44 -08:00
startswith16.c Change license 2020-12-27 17:18:44 -08:00
stpcpy.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
stpncpy.c Change license 2020-12-27 17:18:44 -08:00
str.h Make Cosmopolitan ANSI C89 compatible 2021-02-03 17:48:59 -08:00
str.mk Make more functions friendly to Address Sanitizer 2021-02-02 03:45:31 -08:00
strcasecmp.c Change license 2020-12-27 17:18:44 -08:00
strcasecmp8to16.c Change license 2020-12-27 17:18:44 -08:00
strcasecmp16.c Change license 2020-12-27 17:18:44 -08:00
strcat.c Fix XNU / FreeBSD / OpenBSD / RHEL5 / NT bugs 2021-01-25 18:31:17 -08:00
strcat16.c Support dirfd relative iops on Windows 2021-01-30 01:49:43 -08:00
strchr.c Make more functions friendly to Address Sanitizer 2021-02-02 03:45:31 -08:00
strchrnul.c Make more functions friendly to Address Sanitizer 2021-02-02 03:45:31 -08:00
strclen.c Change license 2020-12-27 17:18:44 -08:00
strclen16.c Change license 2020-12-27 17:18:44 -08:00
strcmp.c Make more functions friendly to Address Sanitizer 2021-02-02 03:45:31 -08:00
strcmp8to16.c Change license 2020-12-27 17:18:44 -08:00
strcmp8to16i.internal.h Fold conv package into fmt 2020-12-09 16:52:00 -08:00
strcmp16.c Change license 2020-12-27 17:18:44 -08:00
strcpy.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
strcpy16.c Implement getcwd() for XNU 2021-01-30 08:54:12 -08:00
strcspn-pure.c Make more functions friendly to Address Sanitizer 2021-02-02 03:45:31 -08:00
strcspn16.c Change license 2020-12-27 17:18:44 -08:00
strlcat.c Change license 2020-12-27 17:18:44 -08:00
strlcpy.c Fix strlcpy 2020-12-27 21:35:38 -08:00
strlen-pure.c Make more functions friendly to Address Sanitizer 2021-02-02 03:45:31 -08:00
strncasecmp.c Change license 2020-12-27 17:18:44 -08:00
strncasecmp8to16.c Change license 2020-12-27 17:18:44 -08:00
strncasecmp16.c Change license 2020-12-27 17:18:44 -08:00
strncat.c Change license 2020-12-27 17:18:44 -08:00
strncmp.c Change license 2020-12-27 17:18:44 -08:00
strncmp8to16.c Change license 2020-12-27 17:18:44 -08:00
strncmp16.c Change license 2020-12-27 17:18:44 -08:00
strncpy.c Fix XNU / FreeBSD / OpenBSD / RHEL5 / NT bugs 2021-01-25 18:31:17 -08:00
strnlen.c Make more functions friendly to Address Sanitizer 2021-02-02 03:45:31 -08:00
strntolower.c Change license 2020-12-27 17:18:44 -08:00
strntoupper.c Implement more security stuff 2021-02-02 20:21:06 -08:00
strpbrk.c Change license 2020-12-27 17:18:44 -08:00
strpbrk16.c Change license 2020-12-27 17:18:44 -08:00
strrchr.c Change license 2020-12-27 17:18:44 -08:00
strrchr16.c Change license 2020-12-27 17:18:44 -08:00
strsep.c Change license 2020-12-27 17:18:44 -08:00
strsignal.c Change license 2020-12-27 17:18:44 -08:00
strspn.c Change license 2020-12-27 17:18:44 -08:00
strspn16.c Change license 2020-12-27 17:18:44 -08:00
strstr.c Fix XNU / FreeBSD / OpenBSD / RHEL5 / NT bugs 2021-01-25 18:31:17 -08:00
strstr16.c Fix XNU / FreeBSD / OpenBSD / RHEL5 / NT bugs 2021-01-25 18:31:17 -08:00
strtok.c Change license 2020-12-27 17:18:44 -08:00
strtok_r.c Change license 2020-12-27 17:18:44 -08:00
strtolower.c Implement more security stuff 2021-02-02 20:21:06 -08:00
strtoupper.c Implement more security stuff 2021-02-02 20:21:06 -08:00
strverscmp.c Work towards improving signals and processes 2021-01-27 19:34:02 -08:00
thompike.h Add minor improvements and cleanup 2020-10-27 03:39:46 -07:00
timingsafe_memcmp.c Add timingsafe_memcmp #13 2020-12-28 20:01:15 -08:00
tinymemmem.c Implement more security stuff 2021-02-02 20:21:06 -08:00
tinystrstr.c Implement more security stuff 2021-02-02 20:21:06 -08:00
tinystrstr16.c Implement more security stuff 2021-02-02 20:21:06 -08:00
tolower.c Change license 2020-12-27 17:18:44 -08:00
toupper.c Change license 2020-12-27 17:18:44 -08:00
towlower.c Change license 2020-12-27 17:18:44 -08:00
towupper.c Change license 2020-12-27 17:18:44 -08:00
tpdecode.internal.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
tpdecode.ncabi.c Implement more security stuff 2021-02-02 20:21:06 -08:00
tpdecodecb.internal.h Make minor improvements 2020-12-23 23:42:56 -08:00
tpenc.h Implement more security stuff 2021-02-02 20:21:06 -08:00
tpenc.S Change license 2020-12-27 17:18:44 -08:00
tpencode.internal.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
tpencode.ncabi.c Change license 2020-12-27 17:18:44 -08:00
tprecode8to16.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
tprecode16to8.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
undeflate.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
undeflate.h Initial import 2020-06-15 07:18:57 -07:00
utf16.h Make minor improvements 2020-12-23 23:42:56 -08:00
wchomp.c Change license 2020-12-27 17:18:44 -08:00
wcrtomb.c Change license 2020-12-27 17:18:44 -08:00
wcscasecmp.c Change license 2020-12-27 17:18:44 -08:00
wcscat.c Implement getcwd() for XNU 2021-01-30 08:54:12 -08:00
wcscmp.c Change license 2020-12-27 17:18:44 -08:00
wcscpy.c Implement getcwd() for XNU 2021-01-30 08:54:12 -08:00
wcscspn.c Change license 2020-12-27 17:18:44 -08:00
wcsendswith.c Change license 2020-12-27 17:18:44 -08:00
wcslen.c Fix XNU / FreeBSD / OpenBSD / RHEL5 / NT bugs 2021-01-25 18:31:17 -08:00
wcsncasecmp.c Change license 2020-12-27 17:18:44 -08:00
wcsncmp.c Change license 2020-12-27 17:18:44 -08:00
wcsncpy.c Change license 2020-12-27 17:18:44 -08:00
wcspbrk.c Change license 2020-12-27 17:18:44 -08:00
wcsrchr.c Change license 2020-12-27 17:18:44 -08:00
wcsrtombs.c Change license 2020-12-27 17:18:44 -08:00
wcsspn.c Change license 2020-12-27 17:18:44 -08:00
wcsstartswith.c Change license 2020-12-27 17:18:44 -08:00
wcstombs.c Change license 2020-12-27 17:18:44 -08:00
wctob.c Change license 2020-12-27 17:18:44 -08:00
wctomb.c Change license 2020-12-27 17:18:44 -08:00
wmemcpy.c Change license 2020-12-27 17:18:44 -08:00
wmemmove.c Change license 2020-12-27 17:18:44 -08:00
wmempcpy.c Change license 2020-12-27 17:18:44 -08:00
wmemset.c Change license 2020-12-27 17:18:44 -08:00
zipfindcentraldir.c Change license 2020-12-27 17:18:44 -08:00