[all-commits] [llvm/llvm-project] 3adcc7: [objc_direct] Small updates to help with adoption.

Pierre Habouzit via All-commits all-commits at lists.llvm.org
Sun Feb 16 16:51:46 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 3adcc78a8071e7d6dd9aa34979f9842a72a2d91b
      https://github.com/llvm/llvm-project/commit/3adcc78a8071e7d6dd9aa34979f9842a72a2d91b
  Author: Pierre Habouzit <phabouzit at apple.com>
  Date:   2020-02-16 (Sun, 16 Feb 2020)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDeclObjC.cpp
    M clang/lib/Sema/SemaExprObjC.cpp
    M clang/lib/Sema/SemaObjCProperty.cpp
    A clang/test/FixIt/fixit-objc-direct.m
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    A clang/test/SemaObjC/category-direct-properties.m
    A clang/test/SemaObjC/dynamic-direct-properties.m
    M clang/test/SemaObjC/method-direct.m

  Log Message:
  -----------
  [objc_direct] Small updates to help with adoption.

Add fixits for messaging self in MRR or using super, as the intent is
clear, and it turns out people do that a lot more than expected.

Allow for objc_direct_members on main interfaces, it's extremely useful
for internal only classes, and proves to be quite annoying for adoption.

Add some better warnings around properties direct/non-direct clashes (it
was done for methods but properties were a miss).

Add some errors when direct properties are marked @dynamic.

Radar-Id: rdar://problem/58355212
Signed-off-by: Pierre Habouzit <phabouzit at apple.com>
Differential Revision: https://reviews.llvm.org/D73755




More information about the All-commits mailing list