[all-commits] [llvm/llvm-project] ae318b: [libc++] Post-commit review on D99928.

Quuxplusone via All-commits all-commits at lists.llvm.org
Tue Apr 6 12:32:25 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ae318beb35517c70505114cab8d1fb286f99ab4b
      https://github.com/llvm/llvm-project/commit/ae318beb35517c70505114cab8d1fb286f99ab4b
  Author: Arthur O'Dwyer <arthur.j.odwyer at gmail.com>
  Date:   2021-04-06 (Tue, 06 Apr 2021)

  Changed paths:
    M libcxx/test/std/concepts/concepts.callable/concept.invocable/invocable.compile.pass.cpp
    M libcxx/test/std/concepts/concepts.callable/concept.regularinvocable/regular_invocable.pass.cpp

  Log Message:
  -----------
  [libc++] Post-commit review on D99928.

The "user-defined conversion by implicit constructor" codepath is already
handled by `B(int)`; we don't need to test `A(const A&)` a second time
via `DA` (nor the isomorphic case with `DB`).
We don't need `&` anywhere in this test.
Generally, `operator()` should be const; this test needn't be special.
(No functional change in test coverage.)


  Commit: 2d0f1fa472a99dbb46735623363fe918feeda795
      https://github.com/llvm/llvm-project/commit/2d0f1fa472a99dbb46735623363fe918feeda795
  Author: Arthur O'Dwyer <arthur.j.odwyer at gmail.com>
  Date:   2021-04-06 (Tue, 06 Apr 2021)

  Changed paths:
    M libcxx/docs/Contributing.rst
    M libcxx/include/chrono
    M libcxx/include/deque
    M libcxx/include/filesystem
    M libcxx/include/iterator
    M libcxx/include/map
    M libcxx/include/memory
    M libcxx/include/optional
    M libcxx/include/queue
    M libcxx/include/regex
    M libcxx/include/set
    M libcxx/include/string
    M libcxx/include/string_view
    M libcxx/include/system_error
    M libcxx/include/tuple
    M libcxx/include/typeindex
    M libcxx/include/unordered_map
    M libcxx/include/unordered_set
    M libcxx/include/utility
    M libcxx/include/variant
    M libcxx/include/vector
    A libcxx/test/libcxx/inclusions/algorithm.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/array.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/bitset.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/chrono.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/cinttypes.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/complex.h.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/deque.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/filesystem.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/forward_list.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/ios.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/iostream.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/iterator.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/list.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/map.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/memory.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/optional.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/queue.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/random.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/regex.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/set.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/stack.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/string.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/string_view.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/system_error.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/tgmath.h.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/thread.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/tuple.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/typeindex.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/unordered_map.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/unordered_set.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/utility.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/valarray.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/variant.inclusions.compile.pass.cpp
    A libcxx/test/libcxx/inclusions/vector.inclusions.compile.pass.cpp
    A libcxx/utils/generate_header_inclusion_tests.py

  Log Message:
  -----------
  [libc++] Header inclusion tests.

As mandated by the Standard's various synopses, e.g. [iterator.synopsis].
Searching the TeX source for '#include' is a good way to find all of these
mandates.

The new tests are all autogenerated by utils/generate_header_inclusion_tests.py.
I was SHOCKED by how many mandates there are, and how many of them
libc++ wasn't conforming with.

Differential Revision: https://reviews.llvm.org/D99309


Compare: https://github.com/llvm/llvm-project/compare/fcc57558783b...2d0f1fa472a9


More information about the All-commits mailing list