[all-commits] [llvm/llvm-project] 40267c: [libc++] ADL-proof <vector> by adding _VSTD:: qual...
Quuxplusone via All-commits
all-commits at lists.llvm.org
Thu Nov 19 06:19:52 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 40267cc989e6d055d5e470681dc7bcfffc72c32f
https://github.com/llvm/llvm-project/commit/40267cc989e6d055d5e470681dc7bcfffc72c32f
Author: Arthur O'Dwyer <arthur.j.odwyer at gmail.com>
Date: 2020-11-19 (Thu, 19 Nov 2020)
Changed paths:
M libcxx/include/__hash_table
M libcxx/include/__split_buffer
M libcxx/include/__tree
M libcxx/include/deque
M libcxx/include/forward_list
M libcxx/include/list
M libcxx/include/memory
M libcxx/include/string
M libcxx/include/vector
A libcxx/test/libcxx/containers/sequences/vector/robust_against_adl.pass.cpp
Log Message:
-----------
[libc++] ADL-proof <vector> by adding _VSTD:: qualification on calls.
(1) Add _VSTD:: qualification to __swap_allocator.
(2) Add _VSTD:: qualification consistently to __to_address.
(3) Add some more missing _VSTD:: to <vector>, with a regression test.
This part is cleanup after d9a4f936d05.
Note that a vector whose allocator actually runs afoul of any of these ADL calls will
likely also run afoul of simple things like `v1 == v2` (which is also an ADL call).
But, still, libc++ should be consistent in qualifying function calls wherever possible.
Relevant blog post: https://quuxplusone.github.io/blog/2019/09/26/uglification-doesnt-stop-adl/
Differential Revision: https://reviews.llvm.org/D91708
More information about the All-commits
mailing list