[libc++] Consistently replace `std::` qualification with `_VSTD::` or nothing. NFCI.
authorArthur O'Dwyer <arthur.j.odwyer@gmail.com>
Fri, 27 Nov 2020 16:02:06 +0000 (11:02 -0500)
committerArthur O'Dwyer <arthur.j.odwyer@gmail.com>
Wed, 2 Dec 2020 03:13:39 +0000 (22:13 -0500)
commitd586f92c9456a972ee475a021525c0522b89587b
tree2f66cb796e5b2918a1f7aebb32b08db55f3c1232
parent40950a44b9a6aefe17b130e291f8728b34844bce
[libc++] Consistently replace `std::` qualification with `_VSTD::` or nothing. NFCI.

I used a lot of `git grep` to find places where `std::` was being used
outside of comments and assert-messages. There were three outcomes:

- Qualified function calls, e.g. `std::move` becomes `_VSTD::move`.
    This is the most common case.

- Typenames that don't need qualification, e.g. `std::allocator` becomes `allocator`.
    Leaving these as `_VSTD::allocator` would also be fine, but I decided
    that removing the qualification is more consistent with existing practice.

- Names that specifically need un-versioned `std::` qualification,
    or that I wasn't sure about. For example, I didn't touch any code in
    <atomic>, <math.h>, <new>, or any ext/ or experimental/ headers;
    and I didn't touch any instances of `std::type_info`.

In some deduction guides, we were accidentally using `class Alloc = typename std::allocator<T>`,
despite `std::allocator<T>`'s type-ness not being template-dependent.
Because `std::allocator` is a qualified name, this did parse as we intended;
but what we meant was simply `class Alloc = allocator<T>`.

Differential Revision: https://reviews.llvm.org/D92250
34 files changed:
libcxx/include/__debug
libcxx/include/__hash_table
libcxx/include/__mutex_base
libcxx/include/__split_buffer
libcxx/include/__string
libcxx/include/__tree
libcxx/include/algorithm
libcxx/include/array
libcxx/include/barrier
libcxx/include/bit
libcxx/include/bitset
libcxx/include/cmath
libcxx/include/compare
libcxx/include/complex
libcxx/include/deque
libcxx/include/filesystem
libcxx/include/forward_list
libcxx/include/functional
libcxx/include/future
libcxx/include/iomanip
libcxx/include/iterator
libcxx/include/list
libcxx/include/memory
libcxx/include/numbers
libcxx/include/numeric
libcxx/include/random
libcxx/include/regex
libcxx/include/string_view
libcxx/include/type_traits
libcxx/include/typeinfo
libcxx/include/unordered_map
libcxx/include/utility
libcxx/include/variant
libcxx/include/vector