[all-commits] [llvm/llvm-project] 0bdab9: [clang] preserve sugar on initializer_list deduction

Matheus Izvekov via All-commits all-commits at lists.llvm.org
Tue Apr 15 22:53:40 PDT 2025


  Branch: refs/heads/users/mizvekov/dependent-elab-keyword-fixes
  Home:   https://github.com/llvm/llvm-project
  Commit: 0bdab9c8e1093eaa80bae640385e4ad7714e4a95
      https://github.com/llvm/llvm-project/commit/0bdab9c8e1093eaa80bae640385e4ad7714e4a95
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-04-16 (Wed, 16 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/Type.h
    M clang/lib/AST/Type.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/test/CXX/drs/cwg23xx.cpp

  Log Message:
  -----------
  [clang] preserve sugar on initializer_list deduction


  Commit: d6fb0911d865ba3f64fb9dedfeebe54d45e3879d
      https://github.com/llvm/llvm-project/commit/d6fb0911d865ba3f64fb9dedfeebe54d45e3879d
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-04-16 (Wed, 16 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/TypeLoc.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/Analysis/anonymous-decls.cpp
    M clang/test/SemaTemplate/dependent-template-recover.cpp
    M clang/test/SemaTemplate/elaborated-type-specifier.cpp
    M clang/test/SemaTemplate/typename-specifier-3.cpp

  Log Message:
  -----------
  [clang] Fix elaborated keyword canonicalization.

class and struct keywords are functionally equivalent,
so relying on their equivalence was IFNDR.
This changes it so we treat them as equivalent,
as at least that disallows overloading, which is diagnosable.

This patch also considers a few drive by fixes to preservation
of the presence / abscence of the typename keyword, and improves
a few assertions in that area.

Also improves preservervation of sugar on initializer_list deduction
in order to avoid a few changes in diagnostics.


Compare: https://github.com/llvm/llvm-project/compare/fae0bd939ace...d6fb0911d865

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