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

rdar://problem/67892794
This commit is contained in:
Akira Hatanaka 2020-09-04 10:26:05 -07:00
parent 8760048384
commit 64bb582f4a

View File

@ -35,7 +35,8 @@ High Level
========== ==========
The ABI of ``Blocks`` consist of their layout and the runtime functions required 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 .. 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 void *isa; // initialized to &_NSConcreteStackBlock or &_NSConcreteGlobalBlock
int flags; int flags;
int reserved; int reserved;
void (*invoke)(void *, ...); R (*invoke)(struct Block_literal_1 *, P...);
struct Block_descriptor_1 { struct Block_descriptor_1 {
unsigned long int reserved; // NULL unsigned long int reserved; // NULL
unsigned long int size; // sizeof(struct Block_literal_1) unsigned long int size; // sizeof(struct Block_literal_1)