[all-commits] [llvm/llvm-project] 55b520: [APINotes] Avoid duplicated attributes for class t...

Egor Zhdan via All-commits all-commits at lists.llvm.org
Fri Jan 10 11:42:05 PST 2025


  Branch: refs/heads/users/egorzhdan/apinotes-class-template
  Home:   https://github.com/llvm/llvm-project
  Commit: 55b520b17e4dd3ba0655c8e62e46f0b6d548cb3d
      https://github.com/llvm/llvm-project/commit/55b520b17e4dd3ba0655c8e62e46f0b6d548cb3d
  Author: Egor Zhdan <e_zhdan at apple.com>
  Date:   2025-01-10 (Fri, 10 Jan 2025)

  Changed paths:
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/APINotes/Inputs/Headers/Templates.h
    M clang/test/APINotes/templates.cpp

  Log Message:
  -----------
  [APINotes] Avoid duplicated attributes for class template instantiations

If a C++ class template is annotated via API Notes, and it is instantiated via a typedef or a using-decl, the instantiations had the attributes repeated twice. This is because Clang was adding the attribute while processing the class template, and then again when processing the concrete instantiation. This change makes sure we don't try to add attributes from API Notes to concrete instantiations, since there is no way to annotate those in API Notes.

rdar://142539959



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