32 lines
877 B
C
32 lines
877 B
C
|
// REQUIRES: x86-registered-target
|
||
|
// RUN: %clang_cc1 -triple i386-apple-darwin10 -fblocks -g -S %s -o -
|
||
|
|
||
|
// rdar://7590323
|
||
|
typedef struct dispatch_queue_s *dispatch_queue_t;
|
||
|
__attribute__((visibility("default")))
|
||
|
extern struct dispatch_queue_s _dispatch_main_q;
|
||
|
typedef struct dispatch_item_s *dispatch_item_t;
|
||
|
typedef void (^dispatch_legacy_block_t)(dispatch_item_t);
|
||
|
dispatch_item_t LEGACY_dispatch_call(dispatch_queue_t dq,
|
||
|
dispatch_legacy_block_t dispatch_block,
|
||
|
dispatch_legacy_block_t callback_block) {
|
||
|
dispatch_queue_t lq = _dispatch_queue_get_current() ?: (&_dispatch_main_q);
|
||
|
dispatch_async(dq, ^{
|
||
|
if (callback_block) {
|
||
|
dispatch_async(lq, ^{
|
||
|
}
|
||
|
);
|
||
|
}
|
||
|
}
|
||
|
);
|
||
|
}
|
||
|
|
||
|
// radar://9008853
|
||
|
typedef struct P {
|
||
|
int x;
|
||
|
} PS;
|
||
|
# 1 ""
|
||
|
void foo() {
|
||
|
PS p2;
|
||
|
}
|