[all-commits] [llvm/llvm-project] 9189ca: Backport: [clang] fix P3310 overload resolution fl...

Matheus Izvekov via All-commits all-commits at lists.llvm.org
Thu Feb 20 15:19:15 PST 2025


  Branch: refs/heads/users/mizvekov/clang-fix-P3310-strict-match-incomplete-types-20.x
  Home:   https://github.com/llvm/llvm-project
  Commit: 9189ca87225272ff5cd36f40411924b88c6985e3
      https://github.com/llvm/llvm-project/commit/9189ca87225272ff5cd36f40411924b88c6985e3
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-02-20 (Thu, 20 Feb 2025)

  Changed paths:
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/test/AST/ast-dump-templates.cpp
    M clang/test/AST/gen_ast_dump_json_test.py
    M clang/test/SemaTemplate/cwg2398.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/CxxModuleHandler.cpp

  Log Message:
  -----------
  Backport: [clang] fix P3310 overload resolution flag propagation (#125791)

Class templates might be only instantiated when they are required to be
complete, but checking the template args against the primary template is
immediate.

This result is cached so that later when the class is instantiated,
checking against the primary template is not repeated.

The 'MatchedPackOnParmToNonPackOnArg' flag is also produced upon
checking against the primary template, so it needs to be cached in the
specialziation as well.

This fixes a bug which has not been in any release, so there are no
release notes.

Fixes #125290



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