summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Ryan Prichard <rprichard@google.com> 2024-02-12 19:56:10 -0800
committer Ryan Prichard <rprichard@google.com> 2024-02-12 20:02:46 -0800
commit20ff570db1c9a7cc8fce50e17bbfa6af668f86d5 (patch)
treebb87acd46badb3579373652a36e4047a7528610b
parent3b17f284fdc343f28c0735ceb547ba82fb424de9 (diff)
vr: avoid missing std::char_traits<const T>
In newer versions of libc++, std::char_traits<T> is only defined for character types (and not const/volatile-qualified character types). See https://discourse.llvm.org/t/deprecating-std-string-t-for-non-character-t/66779. Remove the cv qualifiers from CharT first. Keep qualifiers on value_type and typedefs derived from it. This library appears to be unused (see b/253514421#comment11), but it still builds with a "checkbuild", so it blocks the libc++ update (b/175635923). Bug: 175635923 Test: make checkbuild Test: m MODULES-IN-frameworks-native-libs-vr Test: /data/nativetest64/pdx_tests/pdx_tests Change-Id: I2bfa04ccd073f8701597be8618bb8b48eb695afe
-rw-r--r--libs/vr/libpdx/private/pdx/rpc/string_wrapper.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/libs/vr/libpdx/private/pdx/rpc/string_wrapper.h b/libs/vr/libpdx/private/pdx/rpc/string_wrapper.h
index 2d0a4ea6ec..371ed89fc9 100644
--- a/libs/vr/libpdx/private/pdx/rpc/string_wrapper.h
+++ b/libs/vr/libpdx/private/pdx/rpc/string_wrapper.h
@@ -17,12 +17,12 @@ namespace rpc {
// C strings more efficient by avoiding unnecessary copies when remote method
// signatures specify std::basic_string arguments or return values.
template <typename CharT = std::string::value_type,
- typename Traits = std::char_traits<CharT>>
+ typename Traits = std::char_traits<std::remove_cv_t<CharT>>>
class StringWrapper {
public:
// Define types in the style of STL strings to support STL operators.
typedef Traits traits_type;
- typedef typename Traits::char_type value_type;
+ typedef CharT value_type;
typedef std::size_t size_type;
typedef value_type& reference;
typedef const value_type& const_reference;