[llvm-branch-commits] [libc] [libc][wctype] Add perfect hash map for conversion functions (PR #187670)

via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Fri Mar 20 03:41:39 PDT 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results

The build failed before running any tests. Click on a failure below to see the details.

<details>
<summary>libc/test/src/__support/CPP/CMakeFiles/libc.test.src.__support.CPP.array_test.__unit__.__build__.dir/array_test.cpp.o</summary>

```
FAILED: libc/test/src/__support/CPP/CMakeFiles/libc.test.src.__support.CPP.array_test.__unit__.__build__.dir/array_test.cpp.o
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/./bin/clang++ --target=x86_64-unknown-linux-gnu -DLIBC_NAMESPACE=__llvm_libc_23_0_0_git -I/home/gha/actions-runner/_work/llvm-project/llvm-project/libc -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/runtimes/runtimes-bins/libc -isystem /home/gha/actions-runner/_work/llvm-project/llvm-project/build/runtimes/runtimes-bins/libc/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Xclang -fno-pch-timestamp -O3 -DNDEBUG -std=gnu++17 -UNDEBUG -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_COPT_STRING_LENGTH_IMPL=clang_vector -DLIBC_COPT_FIND_FIRST_CHARACTER_IMPL=word -DLIBC_ADD_NULL_CHECKS -DLIBC_ERRNO_MODE=LIBC_ERRNO_MODE_DEFAULT -DLIBC_THREAD_MODE=LIBC_THREAD_MODE_PLATFORM -DLIBC_CONF_WCTYPE_MODE=LIBC_WCTYPE_MODE_ASCII -DLIBC_COPT_RAW_MUTEX_DEFAULT_SPIN_COUNT=100 -fpie -ffixed-point -Wall -Wextra -Wconversion -Wno-sign-conversion -Wimplicit-fallthrough -Wwrite-strings -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wstrict-prototypes -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wthread-safety -DLIBC_TEST=UNIT -MD -MT libc/test/src/__support/CPP/CMakeFiles/libc.test.src.__support.CPP.array_test.__unit__.__build__.dir/array_test.cpp.o -MF libc/test/src/__support/CPP/CMakeFiles/libc.test.src.__support.CPP.array_test.__unit__.__build__.dir/array_test.cpp.o.d -o libc/test/src/__support/CPP/CMakeFiles/libc.test.src.__support.CPP.array_test.__unit__.__build__.dir/array_test.cpp.o -c /home/gha/actions-runner/_work/llvm-project/llvm-project/libc/test/src/__support/CPP/array_test.cpp
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/libc/test/src/__support/CPP/array_test.cpp:9:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/libc/src/__support/CPP/array.h:12:
/home/gha/actions-runner/_work/llvm-project/llvm-project/libc/src/__support/CPP/iterator.h:42:53: error: no type named 'reference' in '__llvm_libc_23_0_0_git::cpp::iterator_traits<const int *>'
42 |   using reference = typename iterator_traits<Iter>::reference;
|                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/libc/src/__support/CPP/array.h:61:48: note: in instantiation of template class '__llvm_libc_23_0_0_git::cpp::reverse_iterator<const int *>' requested here
61 |   LIBC_INLINE constexpr const_reverse_iterator rbegin() const {
|                                                ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/libc/test/src/__support/CPP/array_test.cpp:55:48: note: in instantiation of member function '__llvm_libc_23_0_0_git::cpp::array<int, 3>::rbegin' requested here
55 |   array<int, 3>::const_reverse_iterator it = z.rbegin();
|                                                ^
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/libc/test/src/__support/CPP/array_test.cpp:9:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/libc/src/__support/CPP/array.h:12:
/home/gha/actions-runner/_work/llvm-project/llvm-project/libc/src/__support/CPP/iterator.h:43:54: error: no type named 'value_type' in '__llvm_libc_23_0_0_git::cpp::iterator_traits<const int *>'
43 |   using value_type = typename iterator_traits<Iter>::value_type;
|                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/libc/test/src/__support/CPP/array_test.cpp:9:
/home/gha/actions-runner/_work/llvm-project/llvm-project/libc/src/__support/CPP/array.h:65:12: error: 'this' argument to member function 'rbegin' has type 'const __llvm_libc_23_0_0_git::cpp::array<int, 3>', but function is not marked const
65 |     return rbegin();
|            ^~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/libc/test/src/__support/CPP/array_test.cpp:57:10: note: in instantiation of member function '__llvm_libc_23_0_0_git::cpp::array<int, 3>::crbegin' requested here
57 |   it = z.crbegin();
|          ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/libc/src/__support/CPP/array.h:58:42: note: 'rbegin' declared here
58 |   LIBC_INLINE constexpr reverse_iterator rbegin() {
|                                          ^
3 errors generated.
```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

https://github.com/llvm/llvm-project/pull/187670


More information about the llvm-branch-commits mailing list