[all-commits] [llvm/llvm-project] 46a395: [clang] Emit error for invalid friend functions un...

antangelo via All-commits all-commits at lists.llvm.org
Tue Jan 16 18:06:14 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 46a395d8c41f6009a7fbae51f408c3c6ea2399d3
      https://github.com/llvm/llvm-project/commit/46a395d8c41f6009a7fbae51f408c3c6ea2399d3
  Author: antangelo <contact at antangelo.com>
  Date:   2024-01-16 (Tue, 16 Jan 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/CXX/dcl.decl/dcl.decl.general/p4-20.cpp
    M clang/test/SemaTemplate/GH71595.cpp
    M clang/test/SemaTemplate/concepts-friends.cpp

  Log Message:
  -----------
  [clang] Emit error for invalid friend functions under [temp.friend]p9 (#78083)

Emits an error for friend FunctionDecls that either:

* are not templates and have a requires clause
* are templates, and have a constrained parameter that depends on a
template parameter from an enclosing template

and are not a definition.

For a non-template friend function with a requires clause, if the
function is not templated then the original error message indicating
that such a function is disallowed is shown instead, as the function
will still be rejected if a definition is added.




More information about the All-commits mailing list