[libc++] ADL-proof vector<bool> by adding _VSTD:: qualification on calls.
authorArthur O'Dwyer <arthur.j.odwyer@gmail.com>
Wed, 16 Dec 2020 00:32:29 +0000 (19:32 -0500)
committerArthur O'Dwyer <arthur.j.odwyer@gmail.com>
Wed, 6 Jan 2021 23:23:50 +0000 (18:23 -0500)
commit781c476ce09ed983477885e33b8acbb2220ad3a1
treedf110add2cbc1411dd67752014f5a1e15c98b322
parent6d94eeadd28af4d488b5875778a3ebfa0d749b52
[libc++] ADL-proof vector<bool> by adding _VSTD:: qualification on calls.

This affects only vectors with weird/malicious allocators,
the same corner case covered in D91708, but for `vector<bool>` this time.

Also ADL-proof <__tree>, which affects only sets and maps with weird/malicious
allocators where the ADL trap is in the *fancy pointer type*.

Also drive-by _VSTD:: qualification in the guts of std::bind,
std::packaged_task, std::condition_variable.

Differential Revision: https://reviews.llvm.org/D93424
libcxx/include/__bit_reference
libcxx/include/__mutex_base
libcxx/include/__tree
libcxx/include/array
libcxx/include/bitset
libcxx/include/functional
libcxx/include/future
libcxx/include/iomanip
libcxx/include/mutex
libcxx/test/libcxx/containers/sequences/vector/robust_against_adl.pass.cpp