From 411abb7014b05b809c0644f196425af1028e7ad3 Mon Sep 17 00:00:00 2001 From: Berke Date: Fri, 7 Apr 2023 22:05:45 +0300 Subject: [PATCH] additional check for absl::string_view availability absl::string_view is uses std::string_view when available. It already checks if std::string_view is available in the earlier code. It should only use absl::string_view implementation. --- deps/flatgeobuf/include/flatbuffers/base.h | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/deps/flatgeobuf/include/flatbuffers/base.h b/deps/flatgeobuf/include/flatbuffers/base.h index bc64f18ad93..98a02262c2b 100644 --- a/deps/flatgeobuf/include/flatbuffers/base.h +++ b/deps/flatgeobuf/include/flatbuffers/base.h @@ -233,12 +233,17 @@ namespace flatbuffers { } #define FLATBUFFERS_HAS_STRING_VIEW 1 // Check for absl::string_view - #elif __has_include("absl/strings/string_view.h") - #include "absl/strings/string_view.h" - namespace flatbuffers { - typedef absl::string_view string_view; - } - #define FLATBUFFERS_HAS_STRING_VIEW 1 + #elif __has_include("absl/strings/string_view.h") && \ + __has_include("absl/base/config.h") && \ + (__cplusplus >= 201411) + #include "absl/base/config.h" + #if !defined(ABSL_USES_STD_STRING_VIEW) + #include "absl/strings/string_view.h" + namespace flatbuffers { + typedef absl::string_view string_view; + } + #define FLATBUFFERS_HAS_STRING_VIEW 1 + #endif #endif #endif // __has_include #endif // !FLATBUFFERS_HAS_STRING_VIEW