diff options
author | Abseil Team <absl-team@google.com> | 2019-07-30T14·36-0700 |
---|---|---|
committer | Andy Soffer <asoffer@google.com> | 2019-07-30T17·27-0400 |
commit | 52e88ee56b72cf32bc66534d942c7398ce481331 (patch) | |
tree | a63d66a7ba3a560cb6154e6f5e4d4fc7419dc162 | |
parent | 36d37ab992038f52276ca66b9da80c1cf0f57dc2 (diff) |
Export of internal Abseil changes.
-- 788c948f698afe5998738cbb40b0629668640d73 by Derek Mauro <dmauro@google.com>: Add an empty raw_logging_internal library. The raw_logging sources will eventually migrate here. This target will only contain internal sources. Abseil compatibility guidelines require users not depend on internals. https://abseil.io/about/compatibility PiperOrigin-RevId: 260712817 -- 8ea947ec54f47fb02e97597d243cb63aa4c5fe0b by Abseil Team <absl-team@google.com>: Fixed an incorrect version number test for optional,etc. availability in iOS. Added tests for watchOS and tvOS. PiperOrigin-RevId: 260490390 -- 53af0544277dc3020b81d16ce110e7bc89f5cf6e by Jorg Brown <jorg@google.com>: Test the error-string path a bit more. PiperOrigin-RevId: 260175886 GitOrigin-RevId: 788c948f698afe5998738cbb40b0629668640d73 Change-Id: I366b73331857dc5a1db843b650c2ba27a69a141e
-rw-r--r-- | absl/base/BUILD.bazel | 9 | ||||
-rw-r--r-- | absl/base/CMakeLists.txt | 9 | ||||
-rw-r--r-- | absl/base/config.h | 9 | ||||
-rw-r--r-- | absl/strings/escaping_test.cc | 11 |
4 files changed, 34 insertions, 4 deletions
diff --git a/absl/base/BUILD.bazel b/absl/base/BUILD.bazel index 1a18f5f7101f..e825de0c1c81 100644 --- a/absl/base/BUILD.bazel +++ b/absl/base/BUILD.bazel @@ -47,6 +47,15 @@ cc_library( ) cc_library( + name = "raw_logging_internal", + copts = ABSL_DEFAULT_COPTS, + linkopts = ABSL_DEFAULT_LINKOPTS, + visibility = [ + "//absl:__subpackages__", + ], +) + +cc_library( name = "spinlock_wait", srcs = [ "internal/spinlock_akaros.inc", diff --git a/absl/base/CMakeLists.txt b/absl/base/CMakeLists.txt index 8417556c4b33..9ff80738db5f 100644 --- a/absl/base/CMakeLists.txt +++ b/absl/base/CMakeLists.txt @@ -34,7 +34,14 @@ absl_cc_library( absl::core_headers COPTS ${ABSL_DEFAULT_COPTS} -) +) + +absl_cc_library( + NAME + raw_logging_internal + COPTS + ${ABSL_DEFAULT_COPTS} +) absl_cc_library( NAME diff --git a/absl/base/config.h b/absl/base/config.h index 692738e31e25..181d840e1488 100644 --- a/absl/base/config.h +++ b/absl/base/config.h @@ -375,12 +375,17 @@ // https://github.com/abseil/abseil-cpp/issues/207 and // https://developer.apple.com/documentation/xcode_release_notes/xcode_10_release_notes // libc++ spells out the availability requirements in the file -// llvm-project/libcxx/include/__config. +// llvm-project/libcxx/include/__config via the #define +// _LIBCPP_AVAILABILITY_BAD_OPTIONAL_ACCESS. #if defined(__APPLE__) && defined(_LIBCPP_VERSION) && \ ((defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && \ __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 101400) || \ (defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && \ - __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ < 101200)) + __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ < 120000) || \ + (defined(__ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__) && \ + __ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__ < 120000) || \ + (defined(__ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__) && \ + __ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__ < 50000)) #define ABSL_INTERNAL_APPLE_CXX17_TYPES_UNAVAILABLE 1 #else #define ABSL_INTERNAL_APPLE_CXX17_TYPES_UNAVAILABLE 0 diff --git a/absl/strings/escaping_test.cc b/absl/strings/escaping_test.cc index 6a633cdc5d20..1967975b69af 100644 --- a/absl/strings/escaping_test.cc +++ b/absl/strings/escaping_test.cc @@ -72,6 +72,11 @@ TEST(CEscape, EscapeAndUnescape) { EXPECT_TRUE(absl::CUnescape(escaped, &unescaped_str)); EXPECT_EQ(unescaped_str, original); + unescaped_str.erase(); + std::string error; + EXPECT_TRUE(absl::CUnescape(escaped, &unescaped_str, &error)); + EXPECT_EQ(error, ""); + // Check in-place unescaping std::string s = escaped; EXPECT_TRUE(absl::CUnescape(s, &s)); @@ -150,7 +155,8 @@ TEST(CEscape, BasicEscaping) { TEST(Unescape, BasicFunction) { epair tests[] = - {{"\\u0030", "0"}, + {{"", ""}, + {"\\u0030", "0"}, {"\\u00A3", "\xC2\xA3"}, {"\\u22FD", "\xE2\x8B\xBD"}, {"\\U00010000", "\xF0\x90\x80\x80"}, @@ -173,6 +179,9 @@ TEST(Unescape, BasicFunction) { std::string out; EXPECT_FALSE(absl::CUnescape(e, &out, &error)); EXPECT_FALSE(error.empty()); + + out.erase(); + EXPECT_FALSE(absl::CUnescape(e, &out)); } } |