[PATCH] D32210: [Sema][ObjC] Add support for attribute "noescape"

Jonathan Roelofs via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Apr 19 08:34:27 PDT 2017


jroelofs added a comment.

This doesn't forbid assigning them to block properties... is that intentional?

  typedef void (^Block)(int);
  
  @interface Foo
  @property Block B;
  @end
  
  void foo(Foo *f, Block __attribute__((noescape)) b) {
    f.B = b;
  }



================
Comment at: include/clang/Basic/AttrDocs.td:123
+* Cannot be captured by a block
+* Cannot be assigned to a variable
+
----------------
Is it helpful to forbid taking the address of them, too?


https://reviews.llvm.org/D32210





More information about the cfe-commits mailing list