thakis added a comment.

We're getting a bunch of errors looking like 
`../../AppsListViewController.m:11:37: error: incompatible block pointer types 
assigning to 'void (^)(__strong id<AppCellProtocol>)' from 'void 
(^)(AppCollectionViewCell *__strong)'` on code that looks fairly harmless to 
me. It looks something like this:

  @protocol AppCellProtocol <NSObject> ... @end
  @interface AppCollectionViewCell : NSObject <AppCellProtocol> ...@enderby 
  
  @interface Cell : NSObject
  @property(nonatomic, copy) void (^buttonPressed)(id<AppCellProtocol> cell);
  @end
  
  @implementation Bar
  - (void) f {
    __weak __typeof(self) weakSelf = self;
    cell.buttonPressed = ^(AppCollectionViewCell *pressedCell) {
      // ...
    };
  }
  @end

The code doesn't say `__strong` anywhere as far as I can tell; it looks like 
regular protocol code.

Is this expected?


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D66831/new/

https://reviews.llvm.org/D66831



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to