[all-commits] [llvm/llvm-project] 6ef4b0: [clang] AST: fix dependency calculation for Typede...

Matheus Izvekov via All-commits all-commits at lists.llvm.org
Sat Jun 7 19:48:54 PDT 2025


  Branch: refs/heads/users/mizvekov/GH89774
  Home:   https://github.com/llvm/llvm-project
  Commit: 6ef4b071a72e4606a68f6685243d7fe266a0f79e
      https://github.com/llvm/llvm-project/commit/6ef4b071a72e4606a68f6685243d7fe266a0f79e
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-06-07 (Sat, 07 Jun 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Type.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/test/CodeGenCXX/dependent-template-alias.cpp

  Log Message:
  -----------
  [clang] AST: fix dependency calculation for TypedefTypes

The dependency from the type sugar of the underlying type of a
Typedef were not being considered for the dependency of the TypedefType
itself.

A TypedefType should be instantiation dependent if it involves
non-instantiated template parameters, even if they don't contribute
to the canonical type.

Besides, a TypedefType should be instantiation dependent if it is
declared in a dependent context, but fixing that would have
performance consequences, as otherwise non-dependent typedef
declarations would need to be transformed during instantiation as well.

This removes the workaround added in https://github.com/llvm/llvm-project/pull/90032

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



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