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