[all-commits] [llvm/llvm-project] c58bc2: [Clang] Only compare template params of potential ...

cor3ntin via All-commits all-commits at lists.llvm.org
Mon Jan 15 15:56:54 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c58bc24fcf678c55b0bf522be89eff070507a005
      https://github.com/llvm/llvm-project/commit/c58bc24fcf678c55b0bf522be89eff070507a005
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-01-16 (Tue, 16 Jan 2024)

  Changed paths:
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/CXX/over/over.load/p2-0x.cpp
    A clang/test/Modules/GH77953.cpp

  Log Message:
  -----------
  [Clang] Only compare template params of potential overload after checking their decl context (#78139)

Fixes a regression from 69066ab3 in which we compared the template lists
of potential overloads before checkings their declaration contexts.

This would cause a crash when doing constraint substitution as part of
that template check, because we would try to refer to not yet
instantiated entities (the underlying cause is unclear).

This patch reorders (again) when we look at template parameter so we
don't do it when checkings friends in different lexical contexts.

Fixes #77953
Fixes #78101




More information about the All-commits mailing list