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

Matheus Izvekov via All-commits all-commits at lists.llvm.org
Sun Jun 8 12:00:29 PDT 2025


  Branch: refs/heads/users/mizvekov/GH89774
  Home:   https://github.com/llvm/llvm-project
  Commit: d623054729e75adc5299ecd426b19863962cafbc
      https://github.com/llvm/llvm-project/commit/d623054729e75adc5299ecd426b19863962cafbc
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-06-08 (Sun, 08 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