diff options
author | Arthur O'Dwyer <arthur.j.odwyer@gmail.com> | 2020-11-18 18:54:38 -0500 |
---|---|---|
committer | Arthur O'Dwyer <arthur.j.odwyer@gmail.com> | 2020-11-19 09:19:16 -0500 |
commit | 40267cc989e6d055d5e470681dc7bcfffc72c32f (patch) | |
tree | 6bf967e253ad7bf30fc486a797d2cb93eea74f6c /clang/lib/CodeGen/CodeGenModule.cpp | |
parent | 57e0007546abd6c73c54249705f4fe42592fd179 (diff) | |
download | llvm-40267cc989e6d055d5e470681dc7bcfffc72c32f.zip llvm-40267cc989e6d055d5e470681dc7bcfffc72c32f.tar.gz llvm-40267cc989e6d055d5e470681dc7bcfffc72c32f.tar.bz2 |
[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
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions