[libcxx-commits] [PATCH] D92250: [libc++] Consistently replace `std::` qualification with `_VSTD::` or nothing. NFCI.
Arthur O'Dwyer via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Fri Nov 27 15:31:27 PST 2020
Quuxplusone created this revision.
Quuxplusone added reviewers: ldionne, zoecarver.
Quuxplusone added a project: libc++.
Herald added subscribers: libcxx-commits, jfb.
Herald added a reviewer: libc++.
Quuxplusone requested review of this revision.
Herald added a reviewer: jdoerfert.
Herald added a subscriber: sstefan1.
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>`.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D92250
Files:
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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D92250.308117.patch
Type: text/x-patch
Size: 46866 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20201127/5480310e/attachment-0001.bin>
More information about the libcxx-commits
mailing list