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
This commit is contained in:
parent
36d37ab992
commit
52e88ee56b
4 changed files with 34 additions and 4 deletions
|
@ -46,6 +46,15 @@ cc_library(
|
|||
deps = [":core_headers"],
|
||||
)
|
||||
|
||||
cc_library(
|
||||
name = "raw_logging_internal",
|
||||
copts = ABSL_DEFAULT_COPTS,
|
||||
linkopts = ABSL_DEFAULT_LINKOPTS,
|
||||
visibility = [
|
||||
"//absl:__subpackages__",
|
||||
],
|
||||
)
|
||||
|
||||
cc_library(
|
||||
name = "spinlock_wait",
|
||||
srcs = [
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue