[all-commits] [llvm/llvm-project] 9be5f4: [clang] Don't typo-fix an expression in a SFINAE c...

Quuxplusone via All-commits all-commits at lists.llvm.org
Thu Jan 27 11:22:20 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9be5f4d5afd9a1b6e88a268f6ea6eb282d77d9fe
      https://github.com/llvm/llvm-project/commit/9be5f4d5afd9a1b6e88a268f6ea6eb282d77d9fe
  Author: Arthur O'Dwyer <arthur.j.odwyer at gmail.com>
  Date:   2022-01-27 (Thu, 27 Jan 2022)

  Changed paths:
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaExprMember.cpp
    A clang/test/SemaCXX/PR52970.cpp

  Log Message:
  -----------
  [clang] Don't typo-fix an expression in a SFINAE context.

If this is a SFINAE context, then continuing to look up names
(in particular, to treat a non-function as a function, and then
do ADL) might too-eagerly complete a type that it's not safe to
complete right now. We should just say "okay, that's a substitution
failure" and not do any more work than absolutely required.

Fixes #52970.

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


  Commit: 8c98ce4dfa7966db48ca22ae6b2a9b6c3cc69648
      https://github.com/llvm/llvm-project/commit/8c98ce4dfa7966db48ca22ae6b2a9b6c3cc69648
  Author: Arthur O'Dwyer <arthur.j.odwyer at gmail.com>
  Date:   2022-01-27 (Thu, 27 Jan 2022)

  Changed paths:
    M libcxx/include/__iterator/reverse_iterator.h

  Log Message:
  -----------
  [libc++] Fix a typo in reverse_iterator::operator=.

We should be checking `is_assignable<It&, ...>`.
`is_assignable<It, ...>` checks for an rvalue left-hand side, which
is basically never assignable-to.
Found while looking into https://cplusplus.github.io/LWG/issue3435 .

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


  Commit: 9021f3682c973f04b0595c6b6b567a58887d34f5
      https://github.com/llvm/llvm-project/commit/9021f3682c973f04b0595c6b6b567a58887d34f5
  Author: Arthur O'Dwyer <arthur.j.odwyer at gmail.com>
  Date:   2022-01-27 (Thu, 27 Jan 2022)

  Changed paths:
    M libcxx/include/__ranges/empty_view.h
    M libcxx/include/__ranges/ref_view.h
    M libcxx/test/std/ranges/range.adaptors/range.all/range.owning.view/borrowing.compile.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.all/range.ref.view/borrowing.compile.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.all/range.ref.view/range.ref.view.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.common.view/borrowing.compile.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.empty/borrowing.compile.pass.cpp
    R libcxx/test/std/ranges/range.adaptors/range.ref.view.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.reverse/borrowing.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/borrowing.compile.pass.cpp
    M libcxx/test/std/ranges/range.factories/range.iota.view/borrowing.compile.pass.cpp
    A libcxx/test/std/ranges/range.factories/range.single.view/borrowing.compile.pass.cpp
    A libcxx/test/std/ranges/range.utility/range.subrange/borrowing.compile.pass.cpp
    R libcxx/test/std/ranges/range.utility/range.subrange/enable_borrowed_range.compile.pass.cpp
    M libcxx/test/support/test_range.h

  Log Message:
  -----------
  [libc++] [ranges] ref_view and empty_view are borrowed ranges. Normalize borrowed_range tests.

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


Compare: https://github.com/llvm/llvm-project/compare/82973edfb72a...9021f3682c97


More information about the All-commits mailing list