[all-commits] [llvm/llvm-project] 724cfc: [Clang] Do not assume a perfect match is a better ...

Corentin Jabot via All-commits all-commits at lists.llvm.org
Fri Jul 18 08:05:40 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 724cfce5801829340b240ba62e82a7e7199e971d
      https://github.com/llvm/llvm-project/commit/724cfce5801829340b240ba62e82a7e7199e971d
  Author: Corentin Jabot <corentinjabot at gmail.com>
  Date:   2025-07-18 (Fri, 18 Jul 2025)

  Changed paths:
    M clang/include/clang/Sema/Overload.h
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/SemaCXX/overload-resolution-deferred-templates.cpp

  Log Message:
  -----------
  [Clang] Do not assume a perfect match is a better match than a non-template non-perfect match (#149504)

This fixes a regression introduced by the "perfect match" overload
resolution mechanism introduced in 8c5a307.

[This does regress the performance noticeably (-0.7% for a stage 2
build)](https://llvm-compile-time-tracker.com/compare.php?from=42d2ae1034b287eb60563c370dbf52c59b66db20&to=82303bbc3e003c937ded498ac9f94f49a3fc3d90&stat=instructions:u),
however, the original patch had a +4% performance impact, so we are only
losing some of the gain, and this has
the benefit of being correct and more robust.

Fixes #147374



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