rjmccall added inline comments.

================
Comment at: docs/Block-ABI-Apple.rst:64
     enum {
+        BLOCK_IS_NOESCAPE      =  (1 << 23),
         BLOCK_HAS_COPY_DISPOSE =  (1 << 25),
----------------
Something happened to my older comments here, but please document the meaning 
of this flag.  Specifically, it is set on blocks that do have captures (and 
thus are not true global blocks) but which are known not to escape for various 
other reasons.  Please include the fact that it implies `BLOCK_IS_GLOBAL` and 
explain why.


================
Comment at: lib/CodeGen/CGBlocks.h:283
+  // Indicates whether the block needs a custom copy or dispose function.
+  bool needsCopyDispose() const {
+    return NeedsCopyDispose && !Block->doesNotEscape();
----------------
Please rename this to `needsCopyDisposeHelpers()` to make it clearer that it's 
specifically about the need for the functions.


Repository:
  rC Clang

https://reviews.llvm.org/D49303



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

Reply via email to