[clang] 64bb582 - Fix the type of the invoke function in the block ABI documentation

Akira Hatanaka via cfe-commits cfe-commits at lists.llvm.org
Fri Sep 4 10:29:32 PDT 2020


Author: Akira Hatanaka
Date: 2020-09-04T10:29:09-07:00
New Revision: 64bb582f4a07d7195a6e6a44a34d166a06f0f071

URL: https://github.com/llvm/llvm-project/commit/64bb582f4a07d7195a6e6a44a34d166a06f0f071
DIFF: https://github.com/llvm/llvm-project/commit/64bb582f4a07d7195a6e6a44a34d166a06f0f071.diff

LOG: Fix the type of the invoke function in the block ABI documentation

rdar://problem/67892794

Added: 
    

Modified: 
    clang/docs/Block-ABI-Apple.rst

Removed: 
    


################################################################################
diff  --git a/clang/docs/Block-ABI-Apple.rst b/clang/docs/Block-ABI-Apple.rst
index d038cdfe9bd2..e21a8b68b5cd 100644
--- a/clang/docs/Block-ABI-Apple.rst
+++ b/clang/docs/Block-ABI-Apple.rst
@@ -35,7 +35,8 @@ High Level
 ==========
 
 The ABI of ``Blocks`` consist of their layout and the runtime functions required
-by the compiler.  A ``Block`` consists of a structure of the following form:
+by the compiler.  A ``Block`` of type ``R (^)(P...)`` consists of a structure of
+the following form:
 
 .. code-block:: c
 
@@ -43,7 +44,7 @@ by the compiler.  A ``Block`` consists of a structure of the following form:
         void *isa; // initialized to &_NSConcreteStackBlock or &_NSConcreteGlobalBlock
         int flags;
         int reserved; 
-        void (*invoke)(void *, ...);
+        R (*invoke)(struct Block_literal_1 *, P...);
         struct Block_descriptor_1 {
         unsigned long int reserved;         // NULL
             unsigned long int size;         // sizeof(struct Block_literal_1)


        


More information about the cfe-commits mailing list