aboutsummaryrefslogtreecommitdiffhomepage
path: root/absl/base
diff options
context:
space:
mode:
authorGravatar Abseil Team <absl-team@google.com>2017-10-13 10:21:40 -0700
committerGravatar jueminyang <jueminyang@google.com>2017-10-16 12:00:04 -0400
commit6de53819a7173bd446156237a37f53464b7732cc (patch)
treebffe391f131d02a8e16a2236ac9b89856b7fc012 /absl/base
parent1a9ba5e2e5a14413704f0c913fac53359576d3b6 (diff)
Changes imported from Abseil "staging" branch:
- 432508bf64998983b3c194d5f164872ce3c2e573 Put visibility tags into absl external build files by Jon Cohen <cohenjon@google.com> - 25d59d11e7b833fe632cddb5bf4d76075ae6282b Use ABSL_PREDICT_TRUE instead of *FALSE for the range che... by Jon Cohen <cohenjon@google.com> - 8d8a5890a55ddd19aac849748441eeb57c684f10 Better detection for MSVC support on std::optional. by Xiaoyi Zhang <zhangxy@google.com> - c1b31e4a97939885c3bbc23ecb093e9619e73ad1 Internal cleanup by Gennadiy Rozental <rogeeff@google.com> - 4f56ad20c4eeccc6f5fb21ec6c7191233d34a090 Internal change. by Matt Calabrese <calabrese@google.com> - d2a02b52c75c295708170f4d17b7ff442c8d6a97 Fixed a minor typo in the SimpleAtob() function comment. by Abseil Team <absl-team@google.com> - 5adbff5c23a45278d06de2ef3a29ea51b0d1269e Internal cleanup by Gennadiy Rozental <rogeeff@google.com> GitOrigin-RevId: 432508bf64998983b3c194d5f164872ce3c2e573 Change-Id: I32ddd151d3350b96a22e8f1830f19b59374953ad
Diffstat (limited to 'absl/base')
-rw-r--r--absl/base/BUILD.bazel18
-rw-r--r--absl/base/config.h15
2 files changed, 31 insertions, 2 deletions
diff --git a/absl/base/BUILD.bazel b/absl/base/BUILD.bazel
index 23439a0..d68448d 100644
--- a/absl/base/BUILD.bazel
+++ b/absl/base/BUILD.bazel
@@ -25,8 +25,6 @@ package(default_visibility = ["//visibility:public"])
licenses(["notice"]) # Apache 2.0
-exports_files(["thread_annotations.h"])
-
cc_library(
name = "spinlock_wait",
srcs = [
@@ -39,6 +37,9 @@ cc_library(
"internal/spinlock_wait.h",
],
copts = ABSL_DEFAULT_COPTS,
+ visibility = [
+ "//absl/base:__pkg__",
+ ],
deps = [":core_headers"],
)
@@ -83,6 +84,9 @@ cc_library(
"internal/malloc_extension_c.h",
],
copts = ABSL_DEFAULT_COPTS,
+ visibility = [
+ "//absl:__subpackages__",
+ ],
deps = [
":core_headers",
":dynamic_annotations",
@@ -108,6 +112,9 @@ cc_library(
textual_hdrs = [
"internal/malloc_hook_invoke.h",
],
+ visibility = [
+ "//absl:__subpackages__",
+ ],
deps = [
":base",
":config",
@@ -124,6 +131,9 @@ cc_library(
"internal/invoke.h",
],
copts = ABSL_DEFAULT_COPTS,
+ visibility = [
+ "//absl:__subpackages__",
+ ],
)
cc_library(
@@ -183,6 +193,9 @@ cc_library(
features = [
"-use_header_modules",
],
+ visibility = [
+ "//absl:__subpackages__",
+ ],
deps = [
":base",
":config",
@@ -205,6 +218,7 @@ cc_library(
testonly = 1,
hdrs = ["internal/exception_testing.h"],
copts = ABSL_TEST_COPTS,
+ visibility = ["//absl:__subpackages__"],
deps = [
":config",
"@com_google_googletest//:gtest",
diff --git a/absl/base/config.h b/absl/base/config.h
index 5f0dd04..495811b 100644
--- a/absl/base/config.h
+++ b/absl/base/config.h
@@ -372,4 +372,19 @@
#endif
#endif
+// For MSVC, `__has_include` is supported in VS 2017 15.3, which is later than
+// the support for <optional>, <any>, <string_view>. So we use _MSC_VER to check
+// whether we have VS 2017 RTM (when <optional>, <any>, <string_view> is
+// implemented) or higher.
+// Also, `__cplusplus` is not correctly set by MSVC, so we use `_MSVC_LANG` to
+// check the language version.
+// TODO(zhangxy): fix tests before enabling aliasing for `std::any`,
+// `std::string_view`.
+#if defined(_MSC_VER) && _MSC_VER >= 1910 && \
+ ((defined(_MSVC_LANG) && _MSVC_LANG > 201402) || __cplusplus > 201402)
+// #define ABSL_HAVE_STD_ANY 1
+#define ABSL_HAVE_STD_OPTIONAL 1
+// #define ABSL_HAVE_STD_STRING_VIEW 1
+#endif
+
#endif // ABSL_BASE_CONFIG_H_