[all-commits] [llvm/llvm-project] 04d20b: [concepts] Set up an instantiation scope for const...

Younan Zhang via All-commits all-commits at lists.llvm.org
Tue Jan 30 03:35:05 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 04d20b17050203e07394b4f9ee61b5affe2d5347
      https://github.com/llvm/llvm-project/commit/04d20b17050203e07394b4f9ee61b5affe2d5347
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-01-30 (Tue, 30 Jan 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaConcept.cpp
    M clang/test/SemaTemplate/concepts-out-of-line-def.cpp

  Log Message:
  -----------
  [concepts] Set up an instantiation scope for constraint expression comparison (#79698)

This is a follow-up for the comparison of constraints on out-of-line
function template definitions. We require the instantiation of a
ParmVarDecl while transforming the expression if that Decl gets
referenced by a DeclRefExpr. However, we're not actually performing the
class or function template instantiation at the time of such comparison.
Therefore, let's map these parameters to themselves so that they get
preserved after the substitution.

Fixes https://github.com/llvm/llvm-project/issues/74447.




More information about the All-commits mailing list