[all-commits] [llvm/llvm-project] 359cac: [clang-tidy] Don't cache classes by name in `fuchs...

Victor Chernyakin via All-commits all-commits at lists.llvm.org
Sun Dec 7 12:24:09 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 359cac491195af10e7481f5a322be689ba01a267
      https://github.com/llvm/llvm-project/commit/359cac491195af10e7481f5a322be689ba01a267
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2025-12-07 (Sun, 07 Dec 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/fuchsia/MultipleInheritanceCheck.cpp
    M clang-tools-extra/clang-tidy/fuchsia/MultipleInheritanceCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/fuchsia/multiple-inheritance.cpp

  Log Message:
  -----------
  [clang-tidy] Don't cache classes by name in `fuchsia-multiple-inheritance` (#171016)

Context: for every class, this check needs to compute whether that class
is an interface (i.e. only has pure virtual methods). This is expensive,
so the check caches the computation. But it caches by class name, which
is problematic, because the same name can refer to different classes at
different scopes. Here's for example a false negative it causes:
https://godbolt.org/z/bMGc5sYqh. This PR changes it to cache by
`CXXRecordDecl *` instead.



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