blob: ba17919a988198741af865cfbafe60e39b764513 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
diff --git a/include/__config b/include/__config
index dfb14fd..56705ec 100644
--- a/include/__config
+++ b/include/__config
@@ -563,7 +563,7 @@ typedef __char32_t char32_t;
// TODO: We provide a escape hatch with _LIBCPP_NO_ABI_TAG for folks who want to avoid increasing
// the length of symbols with an ABI tag. In practice, we should remove the escape hatch and
// use compression mangling instead, see https://github.com/itanium-cxx-abi/cxx-abi/issues/70.
-# ifndef _LIBCPP_NO_ABI_TAG
+# if !defined(_LIBCPP_NO_ABI_TAG) && !defined(__CUDACC__)
# define _LIBCPP_HIDE_FROM_ABI \
_LIBCPP_HIDDEN _LIBCPP_EXCLUDE_FROM_EXPLICIT_INSTANTIATION \
__attribute__((__abi_tag__(_LIBCPP_TOSTRING(_LIBCPP_ODR_SIGNATURE))))
@@ -841,7 +841,8 @@ typedef __char32_t char32_t;
defined(__APPLE__) || \
defined(__MVS__) || \
defined(_AIX) || \
- defined(__EMSCRIPTEN__)
+ defined(__EMSCRIPTEN__) || \
+ defined(__CYGWIN__)
// clang-format on
# define _LIBCPP_HAS_THREAD_API_PTHREAD
# elif defined(__Fuchsia__)
diff --git a/include/__configuration/compiler.h b/include/__configuration/compiler.h
index 80ece22..d34361b 100644
--- a/include/__configuration/compiler.h
+++ b/include/__configuration/compiler.h
@@ -34,7 +34,8 @@
// LLVM RELEASE Update the minimum compiler versions
# if defined(_LIBCPP_CLANG_VER)
# if _LIBCPP_CLANG_VER < 1700
-# warning "Libc++ only supports Clang 17 and later"
+// We allow clang 14 and newer
+// # warning "Libc++ only supports Clang 17 and later"
# endif
# elif defined(_LIBCPP_APPLE_CLANG_VER)
# if _LIBCPP_APPLE_CLANG_VER < 1500
diff --git a/include/__configuration/platform.h b/include/__configuration/platform.h
index 27f68d0..6d5b951 100644
--- a/include/__configuration/platform.h
+++ b/include/__configuration/platform.h
@@ -20,7 +20,7 @@
# define _LIBCPP_OBJECT_FORMAT_ELF 1
#elif defined(__MACH__)
# define _LIBCPP_OBJECT_FORMAT_MACHO 1
-#elif defined(_WIN32)
+#elif defined(_WIN32) || defined(__CYGWIN__)
# define _LIBCPP_OBJECT_FORMAT_COFF 1
#elif defined(__wasm__)
# define _LIBCPP_OBJECT_FORMAT_WASM 1
|