mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-07-21 01:50:30 +00:00
Upgrade to 2022-era LLVM LIBCXX
This commit is contained in:
parent
2f4ca71f26
commit
8e68384e15
2078 changed files with 165657 additions and 65010 deletions
79
third_party/libcxx/cstring
vendored
79
third_party/libcxx/cstring
vendored
|
@ -1,5 +1,5 @@
|
|||
// -*- C++ -*-
|
||||
//===--------------------------- cstring ----------------------------------===//
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
||||
// See https://llvm.org/LICENSE.txt for license information.
|
||||
|
@ -10,15 +10,6 @@
|
|||
#ifndef _LIBCPP_CSTRING
|
||||
#define _LIBCPP_CSTRING
|
||||
|
||||
#include "third_party/libcxx/__config"
|
||||
#include "third_party/libcxx/string.h"
|
||||
|
||||
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
|
||||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
/*
|
||||
cstring synopsis
|
||||
|
||||
|
@ -65,32 +56,50 @@ size_t strlen(const char* s);
|
|||
|
||||
*/
|
||||
|
||||
using ::size_t;
|
||||
using ::memcpy;
|
||||
using ::memmove;
|
||||
using ::strcpy;
|
||||
using ::strncpy;
|
||||
using ::strcat;
|
||||
using ::strncat;
|
||||
using ::memcmp;
|
||||
using ::strcmp;
|
||||
using ::strncmp;
|
||||
using ::strcoll;
|
||||
using ::strxfrm;
|
||||
using ::memchr;
|
||||
using ::strchr;
|
||||
using ::strcspn;
|
||||
using ::strpbrk;
|
||||
using ::strrchr;
|
||||
using ::strspn;
|
||||
using ::strstr;
|
||||
#ifndef _LIBCPP_HAS_NO_THREAD_UNSAFE_C_FUNCTIONS
|
||||
using ::strtok;
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__type_traits/is_constant_evaluated.h>
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#ifndef _LIBCPP_STRING_H
|
||||
# error <cstring> tried including <string.h> but didn't find libc++'s <string.h> header. \
|
||||
This usually means that your header search paths are not configured properly. \
|
||||
The header search paths should contain the C++ Standard Library headers before \
|
||||
any C Standard Library, and you are probably using compiler flags that make that \
|
||||
not be the case.
|
||||
#endif
|
||||
using ::memset;
|
||||
using ::strerror;
|
||||
using ::strlen;
|
||||
|
||||
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
|
||||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
using ::size_t _LIBCPP_USING_IF_EXISTS;
|
||||
using ::memcpy _LIBCPP_USING_IF_EXISTS;
|
||||
using ::memmove _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strcpy _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strncpy _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strcat _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strncat _LIBCPP_USING_IF_EXISTS;
|
||||
using ::memcmp _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strcmp _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strncmp _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strcoll _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strxfrm _LIBCPP_USING_IF_EXISTS;
|
||||
using ::memchr _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strchr _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strcspn _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strpbrk _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strrchr _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strspn _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strstr _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strtok _LIBCPP_USING_IF_EXISTS;
|
||||
using ::memset _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strerror _LIBCPP_USING_IF_EXISTS;
|
||||
using ::strlen _LIBCPP_USING_IF_EXISTS;
|
||||
|
||||
_LIBCPP_END_NAMESPACE_STD
|
||||
|
||||
#endif // _LIBCPP_CSTRING
|
||||
#endif // _LIBCPP_CSTRING
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue