aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/ModuleBuilder.cpp
diff options
context:
space:
mode:
authorPeng Liu <winner245@hotmail.com>2025-03-19 11:58:02 -0400
committerGitHub <noreply@github.com>2025-03-19 11:58:02 -0400
commit029cb8aff1450ed6d69f671a5e5e3e226316b42a (patch)
treea6e24cdbe5207f77cd492cff38d48c13d211d8a7 /clang/lib/CodeGen/ModuleBuilder.cpp
parent1456eabca80d57ebd38b46e49ef3d25aace198ae (diff)
downloadllvm-029cb8aff1450ed6d69f671a5e5e3e226316b42a.zip
llvm-029cb8aff1450ed6d69f671a5e5e3e226316b42a.tar.gz
llvm-029cb8aff1450ed6d69f671a5e5e3e226316b42a.tar.bz2
[libc++] Fix copy_backward for vector<bool> with small storage types (#131560)
This patch fixes an issue in libc++ where `std::copy_backward` and `ranges::copy_backward` incorrectly copy `std::vector<bool>` with small storage types (e.g., `uint8_t`, `uint16_t`). The problem arises from flawed bit mask computations involving integral promotions and sign-bit extension, leading to unintended zeroing of bits. This patch corrects the bitwise operations to ensure correct bit-level copying. Fixes #131718.
Diffstat (limited to 'clang/lib/CodeGen/ModuleBuilder.cpp')
0 files changed, 0 insertions, 0 deletions