mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-06-27 14:58:30 +00:00
Reduce header complexity
- Remove most __ASSEMBLER__ __LINKER__ ifdefs - Rename libc/intrin/bits.h to libc/serialize.h - Block pthread cancelation in fchmodat() polyfill - Remove `clang-format off` statements in third_party
This commit is contained in:
parent
96f979dfc5
commit
fa20edc44d
3057 changed files with 410 additions and 4398 deletions
|
@ -10,7 +10,6 @@
|
|||
#define BLAKE2B256_Final __BLAKE2B256_Final
|
||||
#define BLAKE2B256 __BLAKE2B256
|
||||
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
COSMOPOLITAN_C_START_
|
||||
|
||||
struct Blake2b {
|
||||
|
@ -31,5 +30,4 @@ int BLAKE2B256_Final(struct Blake2b *, uint8_t[BLAKE2B256_DIGEST_LENGTH]);
|
|||
int BLAKE2B256(const void *, size_t, uint8_t[BLAKE2B256_DIGEST_LENGTH]);
|
||||
|
||||
COSMOPOLITAN_C_END_
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
#endif /* COSMOPOLITAN_LIBC_STR_BLAKE2_H_ */
|
||||
|
|
|
@ -24,7 +24,6 @@
|
|||
*
|
||||
* x^32+x^26+x^23+x^22+x^16+x^12+x^11+x^10+x^8+x^7+x^5+x^4+x^2+x+1
|
||||
* 0b00011110110111000110111101000001
|
||||
* _bitreverse32(0x1edc6f41)
|
||||
*
|
||||
* @param init is the initial hash value
|
||||
* @param data points to the data
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
╚─────────────────────────────────────────────────────────────────────────────*/
|
||||
#include "libc/assert.h"
|
||||
#include "libc/dce.h"
|
||||
#include "libc/intrin/bits.h"
|
||||
#include "libc/nexgen32e/cachesize.h"
|
||||
#include "libc/nexgen32e/cpuid4.internal.h"
|
||||
#ifdef __x86_64__
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
* Returns comment of zip central directory.
|
||||
*/
|
||||
const void *GetZipCdirComment(const uint8_t *eocd) {
|
||||
if (READ32LE(eocd) == kZipCdir64HdrMagic && ZIP_CDIR64_COMMENTSIZE(eocd)) {
|
||||
if (ZIP_READ32(eocd) == kZipCdir64HdrMagic && ZIP_CDIR64_COMMENTSIZE(eocd)) {
|
||||
return ZIP_CDIR64_COMMENT(eocd);
|
||||
} else {
|
||||
return ZIP_CDIR_COMMENT(eocd);
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
* Returns comment of zip central directory.
|
||||
*/
|
||||
uint64_t GetZipCdirCommentSize(const uint8_t *eocd) {
|
||||
if (READ32LE(eocd) == kZipCdir64HdrMagic && ZIP_CDIR64_COMMENTSIZE(eocd)) {
|
||||
if (ZIP_READ32(eocd) == kZipCdir64HdrMagic && ZIP_CDIR64_COMMENTSIZE(eocd)) {
|
||||
return ZIP_CDIR64_COMMENTSIZE(eocd);
|
||||
} else {
|
||||
return ZIP_CDIR_COMMENTSIZE(eocd);
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
* Returns offset of zip central directory.
|
||||
*/
|
||||
uint64_t GetZipCdirOffset(const uint8_t *eocd) {
|
||||
if (READ32LE(eocd) == kZipCdir64HdrMagic) {
|
||||
if (ZIP_READ32(eocd) == kZipCdir64HdrMagic) {
|
||||
return ZIP_CDIR64_OFFSET(eocd);
|
||||
} else {
|
||||
return ZIP_CDIR_OFFSET(eocd);
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
* Returns number of records in zip central directory.
|
||||
*/
|
||||
uint64_t GetZipCdirRecords(const uint8_t *eocd) {
|
||||
if (READ32LE(eocd) == kZipCdir64HdrMagic) {
|
||||
if (ZIP_READ32(eocd) == kZipCdir64HdrMagic) {
|
||||
return ZIP_CDIR64_RECORDS(eocd);
|
||||
} else {
|
||||
return ZIP_CDIR_RECORDS(eocd);
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
* Returns size of zip central directory.
|
||||
*/
|
||||
uint64_t GetZipCdirSize(const uint8_t *eocd) {
|
||||
if (READ32LE(eocd) == kZipCdir64HdrMagic) {
|
||||
if (ZIP_READ32(eocd) == kZipCdir64HdrMagic) {
|
||||
return ZIP_CDIR64_SIZE(eocd);
|
||||
} else {
|
||||
return ZIP_CDIR_SIZE(eocd);
|
||||
|
|
|
@ -30,7 +30,7 @@ int64_t GetZipCfileCompressedSize(const uint8_t *z) {
|
|||
for (; p + ZIP_EXTRA_SIZE(p) <= pe; p += ZIP_EXTRA_SIZE(p)) {
|
||||
if (ZIP_EXTRA_HEADERID(p) == kZipExtraZip64) {
|
||||
if (8 <= ZIP_EXTRA_CONTENTSIZE(p)) {
|
||||
return READ64LE(ZIP_EXTRA_CONTENT(p));
|
||||
return ZIP_READ64(ZIP_EXTRA_CONTENT(p));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -37,7 +37,7 @@ int64_t GetZipCfileOffset(const uint8_t *z) {
|
|||
offset += 8;
|
||||
}
|
||||
if (offset + 8 <= ZIP_EXTRA_CONTENTSIZE(p)) {
|
||||
return READ64LE(ZIP_EXTRA_CONTENT(p) + offset);
|
||||
return ZIP_READ64(ZIP_EXTRA_CONTENT(p) + offset);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -43,18 +43,18 @@ void GetZipCfileTimestamps(const uint8_t *cf, struct timespec *mtim,
|
|||
p += ZIP_EXTRA_SIZE(p)) {
|
||||
if (ZIP_EXTRA_HEADERID(p) == kZipExtraNtfs &&
|
||||
ZIP_EXTRA_CONTENTSIZE(p) >= 4 + 4 + 8 &&
|
||||
READ16LE(ZIP_EXTRA_CONTENT(p) + 4) == 1 &&
|
||||
READ16LE(ZIP_EXTRA_CONTENT(p) + 6) >= 8) {
|
||||
ZIP_READ16(ZIP_EXTRA_CONTENT(p) + 4) == 1 &&
|
||||
ZIP_READ16(ZIP_EXTRA_CONTENT(p) + 6) >= 8) {
|
||||
if (mtim) {
|
||||
*mtim = WindowsTimeToTimeSpec(READ64LE(ZIP_EXTRA_CONTENT(p) + 8));
|
||||
*mtim = WindowsTimeToTimeSpec(ZIP_READ64(ZIP_EXTRA_CONTENT(p) + 8));
|
||||
}
|
||||
if (atim && ZIP_EXTRA_CONTENTSIZE(p) >= 4 + 4 + 8 * 2 &&
|
||||
READ16LE(ZIP_EXTRA_CONTENT(p) + 6) >= 16) {
|
||||
*atim = WindowsTimeToTimeSpec(READ64LE(ZIP_EXTRA_CONTENT(p) + 8 * 2));
|
||||
ZIP_READ16(ZIP_EXTRA_CONTENT(p) + 6) >= 16) {
|
||||
*atim = WindowsTimeToTimeSpec(ZIP_READ64(ZIP_EXTRA_CONTENT(p) + 8 * 2));
|
||||
}
|
||||
if (ctim && ZIP_EXTRA_CONTENTSIZE(p) >= 4 + 4 + 8 * 3 &&
|
||||
READ16LE(ZIP_EXTRA_CONTENT(p) + 6) >= 24) {
|
||||
*ctim = WindowsTimeToTimeSpec(READ64LE(ZIP_EXTRA_CONTENT(p) + 8 * 3));
|
||||
ZIP_READ16(ZIP_EXTRA_CONTENT(p) + 6) >= 24) {
|
||||
*ctim = WindowsTimeToTimeSpec(ZIP_READ64(ZIP_EXTRA_CONTENT(p) + 8 * 3));
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
@ -66,7 +66,7 @@ void GetZipCfileTimestamps(const uint8_t *cf, struct timespec *mtim,
|
|||
ZIP_EXTRA_CONTENTSIZE(p) == 1 + 4 * pop(*ZIP_EXTRA_CONTENT(p) & 7)) {
|
||||
if (mtim) {
|
||||
if (*ZIP_EXTRA_CONTENT(p) & 1) {
|
||||
mtim->tv_sec = (int32_t)READ32LE(ZIP_EXTRA_CONTENT(p) + 1);
|
||||
mtim->tv_sec = (int32_t)ZIP_READ32(ZIP_EXTRA_CONTENT(p) + 1);
|
||||
} else {
|
||||
mtim->tv_sec = DosDateTimeToUnix(ZIP_CFILE_LASTMODIFIEDDATE(cf),
|
||||
ZIP_CFILE_LASTMODIFIEDTIME(cf)) -
|
||||
|
@ -74,12 +74,12 @@ void GetZipCfileTimestamps(const uint8_t *cf, struct timespec *mtim,
|
|||
}
|
||||
}
|
||||
if (atim && (*ZIP_EXTRA_CONTENT(p) & 2)) {
|
||||
atim->tv_sec = (int32_t)READ32LE(ZIP_EXTRA_CONTENT(p) + 1 +
|
||||
4 * (*ZIP_EXTRA_CONTENT(p) & 1));
|
||||
atim->tv_sec = (int32_t)ZIP_READ32(ZIP_EXTRA_CONTENT(p) + 1 +
|
||||
4 * (*ZIP_EXTRA_CONTENT(p) & 1));
|
||||
}
|
||||
if (ctim && (*ZIP_EXTRA_CONTENT(p) & 4)) {
|
||||
ctim->tv_sec = (int32_t)READ32LE(ZIP_EXTRA_CONTENT(p) + 1 +
|
||||
4 * pop(*ZIP_EXTRA_CONTENT(p) & 3));
|
||||
ctim->tv_sec = (int32_t)ZIP_READ32(ZIP_EXTRA_CONTENT(p) + 1 +
|
||||
4 * pop(*ZIP_EXTRA_CONTENT(p) & 3));
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
@ -88,8 +88,8 @@ void GetZipCfileTimestamps(const uint8_t *cf, struct timespec *mtim,
|
|||
p += ZIP_EXTRA_SIZE(p)) {
|
||||
if (ZIP_EXTRA_HEADERID(p) == kZipExtraUnix &&
|
||||
ZIP_EXTRA_CONTENTSIZE(p) >= 4 + 4) {
|
||||
if (atim) atim->tv_sec = (int32_t)READ32LE(ZIP_EXTRA_CONTENT(p) + 0);
|
||||
if (mtim) mtim->tv_sec = (int32_t)READ32LE(ZIP_EXTRA_CONTENT(p) + 4);
|
||||
if (atim) atim->tv_sec = (int32_t)ZIP_READ32(ZIP_EXTRA_CONTENT(p) + 0);
|
||||
if (mtim) mtim->tv_sec = (int32_t)ZIP_READ32(ZIP_EXTRA_CONTENT(p) + 4);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -34,7 +34,7 @@ int64_t GetZipCfileUncompressedSize(const uint8_t *z) {
|
|||
offset += 8;
|
||||
}
|
||||
if (offset + 8 <= ZIP_EXTRA_CONTENTSIZE(p)) {
|
||||
return READ64LE(ZIP_EXTRA_CONTENT(p) + offset);
|
||||
return ZIP_READ64(ZIP_EXTRA_CONTENT(p) + offset);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -16,7 +16,6 @@
|
|||
│ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR │
|
||||
│ PERFORMANCE OF THIS SOFTWARE. │
|
||||
╚─────────────────────────────────────────────────────────────────────────────*/
|
||||
#include "libc/intrin/bits.h"
|
||||
#include "libc/zip.internal.h"
|
||||
|
||||
typedef char v16qi __attribute__((__vector_size__(16)));
|
||||
|
@ -48,8 +47,9 @@ void *GetZipEocd(const void *f, size_t n, int *e) {
|
|||
do {
|
||||
#if defined(__x86_64__) && defined(__GNUC__) && !defined(__llvm__) && \
|
||||
!defined(__chibicc__)
|
||||
v8hi pk = {READ16LE("PK"), READ16LE("PK"), READ16LE("PK"), READ16LE("PK"),
|
||||
READ16LE("PK"), READ16LE("PK"), READ16LE("PK"), READ16LE("PK")};
|
||||
v8hi pk = {ZIP_READ16("PK"), ZIP_READ16("PK"), ZIP_READ16("PK"),
|
||||
ZIP_READ16("PK"), ZIP_READ16("PK"), ZIP_READ16("PK"),
|
||||
ZIP_READ16("PK"), ZIP_READ16("PK")};
|
||||
asm("" : "+x"(pk));
|
||||
if (i >= 14) {
|
||||
v2di x = *(const v2di *)(p + i - 14);
|
||||
|
@ -62,9 +62,9 @@ void *GetZipEocd(const void *f, size_t n, int *e) {
|
|||
}
|
||||
}
|
||||
#endif
|
||||
while (magic = READ32LE(p + i), magic != kZipCdir64LocatorMagic &&
|
||||
magic != kZipCdirHdrMagic &&
|
||||
i + 0x10000 + 0x1000 >= n && i > 0) {
|
||||
while (magic = ZIP_READ32(p + i), magic != kZipCdir64LocatorMagic &&
|
||||
magic != kZipCdirHdrMagic &&
|
||||
i + 0x10000 + 0x1000 >= n && i > 0) {
|
||||
--i;
|
||||
}
|
||||
if (magic == kZipCdir64LocatorMagic && i + kZipCdir64LocatorSize <= n &&
|
||||
|
@ -74,7 +74,7 @@ void *GetZipEocd(const void *f, size_t n, int *e) {
|
|||
(err = IsZipEocd32(p, n, i)) == kZipOk) {
|
||||
j = i;
|
||||
do {
|
||||
if (READ32LE(p + j) == kZipCdir64LocatorMagic &&
|
||||
if (ZIP_READ32(p + j) == kZipCdir64LocatorMagic &&
|
||||
j + kZipCdir64LocatorSize <= n &&
|
||||
IsZipEocd64(p, n, ZIP_LOCATE64_OFFSET(p + j)) == kZipOk) {
|
||||
return (void *)(p + ZIP_LOCATE64_OFFSET(p + j));
|
||||
|
|
|
@ -30,7 +30,7 @@ int64_t GetZipLfileCompressedSize(const uint8_t *z) {
|
|||
for (; p + ZIP_EXTRA_SIZE(p) <= pe; p += ZIP_EXTRA_SIZE(p)) {
|
||||
if (ZIP_EXTRA_HEADERID(p) == kZipExtraZip64) {
|
||||
if (8 <= ZIP_EXTRA_CONTENTSIZE(p)) {
|
||||
return READ64LE(ZIP_EXTRA_CONTENT(p));
|
||||
return ZIP_READ64(ZIP_EXTRA_CONTENT(p));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -34,7 +34,7 @@ int64_t GetZipLfileUncompressedSize(const uint8_t *z) {
|
|||
offset += 8;
|
||||
}
|
||||
if (offset + 8 <= ZIP_EXTRA_CONTENTSIZE(p)) {
|
||||
return READ64LE(ZIP_EXTRA_CONTENT(p) + offset);
|
||||
return ZIP_READ64(ZIP_EXTRA_CONTENT(p) + offset);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
│ limitations under the License. │
|
||||
╚─────────────────────────────────────────────────────────────────────────────*/
|
||||
#include "libc/str/highwayhash64.h"
|
||||
#include "libc/intrin/bits.h"
|
||||
#include "libc/serialize.h"
|
||||
|
||||
asm(".ident\t\"\\n\\n\
|
||||
HighwayHash (Apache 2.0)\\n\
|
||||
|
|
|
@ -1,10 +1,8 @@
|
|||
#ifndef COSMOPOLITAN_LIBC_STR_HIGHWAYHASH64_H_
|
||||
#define COSMOPOLITAN_LIBC_STR_HIGHWAYHASH64_H_
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
COSMOPOLITAN_C_START_
|
||||
|
||||
uint64_t HighwayHash64(const void *, size_t, const uint64_t[4]);
|
||||
|
||||
COSMOPOLITAN_C_END_
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
#endif /* COSMOPOLITAN_LIBC_STR_HIGHWAYHASH64_H_ */
|
||||
|
|
|
@ -27,7 +27,7 @@ int IsZipEocd32(const uint8_t *p, size_t n, size_t i) {
|
|||
if (i > n || n - i < kZipCdirHdrMinSize) {
|
||||
return kZipErrorEocdOffsetOverflow;
|
||||
}
|
||||
if (READ32LE(p + i) != kZipCdirHdrMagic) {
|
||||
if (ZIP_READ32(p + i) != kZipCdirHdrMagic) {
|
||||
return kZipErrorEocdMagicNotFound;
|
||||
}
|
||||
if (i + ZIP_CDIR_HDRSIZE(p + i) > n) {
|
||||
|
|
|
@ -28,7 +28,7 @@ int IsZipEocd64(const uint8_t *p, size_t n, size_t i) {
|
|||
if (i > n || i + kZipCdir64HdrMinSize > n) {
|
||||
return kZipErrorEocdOffsetOverflow;
|
||||
}
|
||||
if (READ32LE(p + i) != kZipCdir64HdrMagic) {
|
||||
if (ZIP_READ32(p + i) != kZipCdir64HdrMagic) {
|
||||
return kZipErrorEocdMagicNotFound;
|
||||
}
|
||||
if (ckd_add(&loc, i, ZIP_CDIR64_HDRSIZE(p + i)) || //
|
||||
|
|
|
@ -16,7 +16,6 @@
|
|||
│ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR │
|
||||
│ PERFORMANCE OF THIS SOFTWARE. │
|
||||
╚─────────────────────────────────────────────────────────────────────────────*/
|
||||
#include "libc/intrin/bits.h"
|
||||
#include "libc/macros.internal.h"
|
||||
#include "libc/nexgen32e/x86info.h"
|
||||
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
#ifndef COSMOPOLITAN_LIBC_STR_LANGINFO_H_
|
||||
#define COSMOPOLITAN_LIBC_STR_LANGINFO_H_
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
COSMOPOLITAN_C_START_
|
||||
|
||||
#define ABDAY_1 0x20000
|
||||
|
@ -82,5 +81,4 @@ COSMOPOLITAN_C_START_
|
|||
char *nl_langinfo(int);
|
||||
|
||||
COSMOPOLITAN_C_END_
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
#endif /* COSMOPOLITAN_LIBC_STR_LANGINFO_H_ */
|
||||
|
|
|
@ -19,7 +19,6 @@
|
|||
#define LC_ALL_MASK 0x1fbf
|
||||
#define LOCALE_NAME_MAX 23
|
||||
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
COSMOPOLITAN_C_START_
|
||||
|
||||
#define LC_GLOBAL_LOCALE ((locale_t)-1)
|
||||
|
@ -85,5 +84,4 @@ int strncasecmp_l(const char *, const char *, size_t, locale_t);
|
|||
ssize_t strfmon_l(char *, size_t, locale_t, const char *, ...);
|
||||
|
||||
COSMOPOLITAN_C_END_
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
#endif /* COSMOPOLITAN_LIBC_STR_LOCALE_H_ */
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
│ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR │
|
||||
│ PERFORMANCE OF THIS SOFTWARE. │
|
||||
╚─────────────────────────────────────────────────────────────────────────────*/
|
||||
#include "libc/intrin/bits.h"
|
||||
#include "libc/serialize.h"
|
||||
#include "libc/intrin/pushpop.internal.h"
|
||||
#include "libc/intrin/repmovsb.h"
|
||||
#include "libc/nexgen32e/kompressor.h"
|
||||
|
|
|
@ -16,7 +16,6 @@
|
|||
│ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR │
|
||||
│ PERFORMANCE OF THIS SOFTWARE. │
|
||||
╚─────────────────────────────────────────────────────────────────────────────*/
|
||||
#include "libc/intrin/bits.h"
|
||||
#include "libc/intrin/pushpop.internal.h"
|
||||
#include "libc/nexgen32e/kompressor.h"
|
||||
#include "libc/str/str.h"
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
#ifndef COSMOPOLITAN_LIBC_STR_MB_INTERNAL_H_
|
||||
#define COSMOPOLITAN_LIBC_STR_MB_INTERNAL_H_
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
COSMOPOLITAN_C_START_
|
||||
|
||||
#define SA 0xc2u
|
||||
|
@ -15,5 +14,4 @@ COSMOPOLITAN_C_START_
|
|||
extern const uint32_t kMbBittab[51];
|
||||
|
||||
COSMOPOLITAN_C_END_
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
#endif /* COSMOPOLITAN_LIBC_STR_MB_INTERNAL_H_ */
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
│ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR │
|
||||
│ PERFORMANCE OF THIS SOFTWARE. │
|
||||
╚─────────────────────────────────────────────────────────────────────────────*/
|
||||
#include "libc/intrin/bits.h"
|
||||
#include "libc/serialize.h"
|
||||
#include "libc/str/str.h"
|
||||
#include "libc/str/tab.internal.h"
|
||||
|
||||
|
|
|
@ -16,7 +16,6 @@
|
|||
│ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR │
|
||||
│ PERFORMANCE OF THIS SOFTWARE. │
|
||||
╚─────────────────────────────────────────────────────────────────────────────*/
|
||||
#include "libc/intrin/bits.h"
|
||||
#include "libc/str/str.h"
|
||||
|
||||
/**
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
#define NL_SETD 1
|
||||
#define NL_CAT_LOCALE 1
|
||||
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
COSMOPOLITAN_C_START_
|
||||
|
||||
typedef int nl_item;
|
||||
|
@ -15,5 +14,4 @@ char *catgets(nl_catd, int, int, const char *);
|
|||
int catclose(nl_catd);
|
||||
|
||||
COSMOPOLITAN_C_END_
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
#endif /* COSMOPOLITAN_LIBC_STR_NLTYPES_H_ */
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
#define COSMOPOLITAN_LIBC_STR_SLICE_H_
|
||||
#include "libc/stdbool.h"
|
||||
#include "libc/str/str.h"
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
COSMOPOLITAN_C_START_
|
||||
|
||||
#define SlicesEqual(a, n, b, m) \
|
||||
|
@ -21,5 +20,4 @@ int CompareSlices(const char *, size_t, const char *, size_t);
|
|||
int CompareSlicesCase(const char *, size_t, const char *, size_t);
|
||||
|
||||
COSMOPOLITAN_C_END_
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
#endif /* COSMOPOLITAN_LIBC_STR_SLICE_H_ */
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
#ifndef COSMOPOLITAN_LIBC_STR_STRWIDTH_H_
|
||||
#define COSMOPOLITAN_LIBC_STR_STRWIDTH_H_
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
COSMOPOLITAN_C_START_
|
||||
|
||||
int strwidth(const char *, size_t) strlenesque;
|
||||
|
@ -9,5 +8,4 @@ int strwidth16(const char16_t *, size_t) strlenesque;
|
|||
int strnwidth16(const char16_t *, size_t, size_t) strlenesque;
|
||||
|
||||
COSMOPOLITAN_C_END_
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
#endif /* COSMOPOLITAN_LIBC_STR_STRWIDTH_H_ */
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
#ifndef COSMOPOLITAN_LIBC_STR_TPDECODECB_H_
|
||||
#define COSMOPOLITAN_LIBC_STR_TPDECODECB_H_
|
||||
#include "libc/intrin/bsr.h"
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
|
||||
/* TODO(jart): DELETE? */
|
||||
|
||||
|
@ -36,5 +35,4 @@ forceinline int tpdecodecb(wint_t *out, int first,
|
|||
return i;
|
||||
}
|
||||
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
#endif /* COSMOPOLITAN_LIBC_STR_TPDECODECB_H_ */
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
#ifndef COSMOPOLITAN_LIBC_STR_UNICODE_H_
|
||||
#define COSMOPOLITAN_LIBC_STR_UNICODE_H_
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
COSMOPOLITAN_C_START_
|
||||
|
||||
struct lconv {
|
||||
|
@ -39,5 +38,4 @@ int wcsnwidth(const wchar_t *, size_t, size_t) strlenesque;
|
|||
#endif /* _COSMO_SOURCE */
|
||||
|
||||
COSMOPOLITAN_C_END_
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
#endif /* COSMOPOLITAN_LIBC_STR_UNICODE_H_ */
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
#define UTF16_MOAR 0xd800 /* 0xD800..0xDBFF */
|
||||
#define UTF16_CONT 0xdc00 /* 0xDC00..0xDFFF */
|
||||
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
COSMOPOLITAN_C_START_
|
||||
|
||||
#define IsSurrogate(wc) ((0xf800 & (wc)) == 0xd800)
|
||||
|
@ -25,5 +24,4 @@ COSMOPOLITAN_C_START_
|
|||
: 0xFFFD)
|
||||
|
||||
COSMOPOLITAN_C_END_
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
#endif /* COSMOPOLITAN_LIBC_STR_UTF16_H_ */
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
│ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR │
|
||||
│ PERFORMANCE OF THIS SOFTWARE. │
|
||||
╚─────────────────────────────────────────────────────────────────────────────*/
|
||||
#include "libc/intrin/bits.h"
|
||||
#include "libc/serialize.h"
|
||||
#include "libc/macros.internal.h"
|
||||
#include "libc/str/str.h"
|
||||
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
#ifndef COSMOPOLITAN_LIBC_STR_WCWIDTH_OSX_H_
|
||||
#define COSMOPOLITAN_LIBC_STR_WCWIDTH_OSX_H_
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
COSMOPOLITAN_C_START_
|
||||
|
||||
extern const uint32_t kWcwidthOsx[591];
|
||||
|
@ -18,5 +17,4 @@ static inline int _wcwidth_osx(uint32_t codePoint) {
|
|||
}
|
||||
|
||||
COSMOPOLITAN_C_END_
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
#endif /* COSMOPOLITAN_LIBC_STR_WCWIDTH_OSX_H_ */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue