[all-commits] [llvm/llvm-project] 694fd1: Allow tag-based API notes on anonymous tag decls w...

Doug Gregor via All-commits all-commits at lists.llvm.org
Wed Oct 2 10:21:44 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 694fd1f297feaf59cd29a3d17e63ee2f6514dd16
      https://github.com/llvm/llvm-project/commit/694fd1f297feaf59cd29a3d17e63ee2f6514dd16
  Author: Doug Gregor <dgregor at apple.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/APINotes/Inputs/Frameworks/SimpleKit.framework/Headers/SimpleKit.apinotes
    M clang/test/APINotes/Inputs/Frameworks/SimpleKit.framework/Headers/SimpleKit.h
    M clang/test/APINotes/types.m
    M clang/test/APINotes/yaml-roundtrip-2.test

  Log Message:
  -----------
  Allow tag-based API notes on anonymous tag decls with typedef names

It is common practice in C to declare anonymous tags that are
immediately given a typedef name, e.g.,

    typedef enum { ... } MyType;

At present, one can only express API notes on the typedef. However, that
excludes the possibility of tag-specific notes like EnumExtensibility.
For these anonymous declarations, process API notes using the typedef
name as the tag name, so that one can add API notes to `MyType` via the
`Tags` section.



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