mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-02-01 20:13:31 +00:00
6f7d0cb1c3
This makes breaking changes to add underscores to many non-standard function names provided by the c library. MODE=tiny is now tinier and we now use smaller locks that are better for tiny apps in this mode. Some headers have been renamed to be in the same folder as the build package, so it'll be easier to know which build dependency is needed. Certain old misguided interfaces have been removed. Intel intrinsics headers are now listed in libc/isystem (but not in the amalgamation) to help further improve open source compatibility. Header complexity has also been reduced. Lastly, more shell scripts are now available.
32 lines
939 B
C
32 lines
939 B
C
#ifndef COSMOPOLITAN_LIBC_STDIO_APPEND_H_
|
|
#define COSMOPOLITAN_LIBC_STDIO_APPEND_H_
|
|
#include "libc/fmt/pflink.h"
|
|
|
|
#define APPEND_COOKIE 21578
|
|
|
|
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
|
COSMOPOLITAN_C_START_
|
|
|
|
struct appendz {
|
|
size_t i;
|
|
size_t n;
|
|
};
|
|
|
|
struct appendz appendz(char *);
|
|
ssize_t appendr(char **, size_t);
|
|
ssize_t appendd(char **, const void *, size_t);
|
|
ssize_t appendw(char **, uint64_t);
|
|
ssize_t appends(char **, const char *);
|
|
ssize_t appendf(char **, const char *, ...);
|
|
ssize_t vappendf(char **, const char *, va_list);
|
|
ssize_t kappendf(char **, const char *, ...);
|
|
ssize_t kvappendf(char **, const char *, va_list);
|
|
|
|
#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
|
|
#define appendf(BUF, FMT, ...) appendf(BUF, PFLINK(FMT), ##__VA_ARGS__)
|
|
#define vappendf(BUF, FMT, VA) vappendf(BUF, PFLINK(FMT), VA)
|
|
#endif
|
|
|
|
COSMOPOLITAN_C_END_
|
|
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
|
#endif /* COSMOPOLITAN_LIBC_STDIO_APPEND_H_ */
|