summaryrefslogtreecommitdiff
path: root/services/incremental/BinderIncrementalService.cpp
diff options
context:
space:
mode:
author Ryan Prichard <rprichard@google.com> 2022-08-30 14:27:35 -0700
committer Ryan Prichard <rprichard@google.com> 2022-09-01 13:28:54 -0700
commit8ebb1dd9722aa51c557799c3d368c63d4ceaf488 (patch)
treefdedc0b3accd38a38f326838d3761532fb909ea8 /services/incremental/BinderIncrementalService.cpp
parent565f2ab1156bfe8b90bfd6904722109002380645 (diff)
incfs: tolerate either ptrdiff_t or size_t for std::span
The out-of-date std::span in external/libcxx currently uses ptrdiff_t as the type of size() and the second ctor argument. The C++20 std::span actually uses size_t for these values instead. Try to accommodate both versions of std::span until libc++ is upgraded. Bug: http://b/175635923 Test: treehugger Change-Id: Idc43f880b6eb21dad79e79fa456847d5865a1ed2
Diffstat (limited to 'services/incremental/BinderIncrementalService.cpp')
-rw-r--r--services/incremental/BinderIncrementalService.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/services/incremental/BinderIncrementalService.cpp b/services/incremental/BinderIncrementalService.cpp
index 2f031bfe4f3f..45ca5cd84e39 100644
--- a/services/incremental/BinderIncrementalService.cpp
+++ b/services/incremental/BinderIncrementalService.cpp
@@ -216,7 +216,10 @@ static std::span<const uint8_t> toSpan(const ::std::optional<::std::vector<uint8
if (!content) {
return {};
}
- return {content->data(), (int)content->size()};
+ // TODO(b/175635923): Replace with {content->data(), content->size()} after libc++ is upgraded.
+ // The type of the second std::span ctor param changed from ptrdiff_t to size_t between the old
+ // libc++ and the finalized C++20.
+ return std::span<const uint8_t>(content->data(), content->size());
}
binder::Status BinderIncrementalService::makeFile(