mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-07-06 03:08:31 +00:00
Import C++ Standard Template Library
You can now use the hardest fastest and most dangerous language there is with Cosmopolitan. So far about 75% of LLVM libcxx has been added. A few breaking changes needed to be made to help this go smoothly. - Rename nothrow to dontthrow - Rename nodiscard to dontdiscard - Add some libm functions, e.g. lgamma, nan, etc. - Change intmax_t from int128 to int64 like everything else - Introduce %jjd formatting directive for int128_t - Introduce strtoi128(), strtou128(), etc. - Rename bsrmax() to bsr128() Some of the templates that should be working currently are std::vector, std::string, std::map, std::set, std::deque, etc.
This commit is contained in:
parent
5022f9e920
commit
868af3f950
286 changed files with 123987 additions and 507 deletions
|
@ -328,7 +328,7 @@ struct NtInterfaceInfo {
|
|||
*/
|
||||
|
||||
int32_t WSAStartup(uint16_t wVersionRequested, struct NtWsaData *lpWSAData)
|
||||
paramsnonnull() nodiscard;
|
||||
paramsnonnull() dontdiscard;
|
||||
|
||||
int WSACleanup(void);
|
||||
int WSAGetLastError(void);
|
||||
|
@ -348,7 +348,7 @@ int __sys_select_nt(int, struct NtFdSet *, struct NtFdSet *, struct NtFdSet *,
|
|||
|
||||
uint64_t WSASocket(int af, int type, int protocol,
|
||||
const struct NtWsaProtocolInfo *opt_lpProtocolInfo,
|
||||
const uint32_t opt_group, uint32_t dwFlags) nodiscard;
|
||||
const uint32_t opt_group, uint32_t dwFlags) dontdiscard;
|
||||
|
||||
int WSAConnect(uint64_t s, const struct sockaddr *name, const int namelen,
|
||||
const struct NtIovec *opt_lpCallerData,
|
||||
|
@ -378,7 +378,7 @@ int64_t WSAAccept(uint64_t s, struct sockaddr *out_addr,
|
|||
int32_t *opt_inout_addrlen,
|
||||
const NtConditionProc opt_lpfnCondition,
|
||||
const uint32_t *opt_dwCallbackData)
|
||||
paramsnonnull((2)) nodiscard;
|
||||
paramsnonnull((2)) dontdiscard;
|
||||
|
||||
int WSASend(uint64_t s, const struct NtIovec *lpBuffers, uint32_t dwBufferCount,
|
||||
uint32_t *opt_out_lpNumberOfBytesSent, uint32_t dwFlags,
|
||||
|
@ -440,7 +440,7 @@ int WSANSPIoctl(int64_t hLookup, uint32_t dwControlCode,
|
|||
const struct NtWsaCompletion *opt_lpCompletion)
|
||||
paramsnonnull((3, 5, 7));
|
||||
|
||||
int64_t WSACreateEvent(void) nodiscard;
|
||||
int64_t WSACreateEvent(void) dontdiscard;
|
||||
bool32 WSACloseEvent(const int64_t hEvent);
|
||||
bool32 WSAResetEvent(const int64_t hEvent);
|
||||
bool32 WSASetEvent(const int64_t hEvent);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue