[all-commits] [llvm/llvm-project] 77f9df: [clang] separate recursive instantiation check fro...

Matheus Izvekov via All-commits all-commits at lists.llvm.org
Sun Oct 19 09:52:43 PDT 2025


  Branch: refs/heads/users/mizvekov/refactor-recursive-inst-diag
  Home:   https://github.com/llvm/llvm-project
  Commit: 77f9dfd8a598c5f83eaffc2290825d6c18281af2
      https://github.com/llvm/llvm-project/commit/77f9dfd8a598c5f83eaffc2290825d6c18281af2
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-10-18 (Sat, 18 Oct 2025)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/test/SemaCXX/libstdcxx_pair_swap_hack.cpp
    M clang/test/SemaTemplate/instantiate-self.cpp

  Log Message:
  -----------
  [clang] separate recursive instantiation check from CodeSynthesisContext

This makes pushing / popping CodeSynthesisContexts much cheaper,
as it delegates to another class this functionality which is not
actually needed in most cases.

It also converts a bunch of these uses into just asserts.

This improves compiler performance a little bit:

Some diagnostics change a little bit, because we avoid printing
a redundant context notes.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list