[libcxx-commits] [PATCH] D138307: [libc++] Remove default definition of std::char_traits
James Y Knight via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Wed Nov 23 08:32:02 PST 2022
jyknight added a comment.
This breaks Apache Arrow, which makes a basic_string_view<unsigned long>, here:
https://github.com/apache/arrow/blob/91ee6dad722ee154d63eea86ce5644e1e658b53b/cpp/src/arrow/util/bitmap.h#L53
/usr/include/c++/v1/string_view:279:45: error: implicit instantiation of undefined template 'std::char_traits<unsigned long>'
static_assert((is_same<_CharT, typename traits_type::char_type>::value),
^
arrow/util/bitmap.h:153:16: note: in instantiation of template class 'std::basic_string_view<unsigned long>' requested here
View<Word> words[N];
^
arrow/compute/kernels/scalar_if_else.cc:1595:15: note: in instantiation of function template specialization 'arrow::internal::Bitmap::VisitWords<3UL, (lambda at arrow/compute/kernels/scalar_if_else.cc:1595:35), unsigned long>' requested here
Bitmap::VisitWords(bitmaps, [&](std::array<uint64_t, 3> words) {
^
arrow/compute/kernels/scalar_if_else.cc:1652:14: note: in instantiation of function template specialization 'arrow::compute::internal::(anonymous namespace)::ExecArrayCaseWhen<arrow::BooleanType>' requested here
return ExecArrayCaseWhen<Type>(ctx, batch, out);
^
arrow/compute/kernels/codegen_internal.h:1173:47: note: in instantiation of member function 'arrow::compute::internal::(anonymous namespace)::CaseWhenFunctor<arrow::BooleanType>::Exec' requested here
return Generator<BooleanType, Args...>::Exec;
^
arrow/compute/kernels/scalar_if_else.cc:2738:17: note: in instantiation of function template specialization 'arrow::compute::internal::GenerateTypeAgnosticPrimitive<arrow::compute::internal::(anonymous namespace)::CaseWhenFunctor>' requested here
auto exec = GenerateTypeAgnosticPrimitive<CaseWhenFunctor>(*type);
^
/usr/include/c++/v1/__string/char_traits.h:42:8: note: template is declared here
struct char_traits;
Also breaks v8, which uses a std::basic_string<uint16_t> member, https://github.com/v8/v8/blob/0afe3f519821449f00c746df3747543d3458bb68/src/inspector/string-16.h#L113
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D138307/new/
https://reviews.llvm.org/D138307
More information about the libcxx-commits
mailing list