brintos

brintos / llvm-project-archived public Read only

0
0
Text · 867 B · 8e82e38 Raw
27 lines · cpp
1// RUN: %clang_cc1 -std=c++11 -emit-llvm -fblocks -o - -triple x86_64-apple-darwin10 %s | FileCheck %s2 3namespace N {4  typedef void (^BL)();5  int func(BL, BL, BL);6 7// CHECK-LABEL: define internal void @_ZN1N8ArrBlockE_block_invoke(8// CHECK-LABEL: define internal void @_ZN1N8ArrBlockE_block_invoke_2(9// CHECK-LABEL: define internal void @_ZN1N8ArrBlockE_block_invoke_310  BL ArrBlock [] = { ^{}, ^{}, ^{} };11 12// CHECK-LABEL: define internal void @_ZN1N4ivalE_block_invoke_4(13// CHECK-LABEL: define internal void @_ZN1N4ivalE_block_invoke_5(14// CHECK-LABEL: define internal void @_ZN1N4ivalE_block_invoke_6(15  int ival = func(^{}, ^{}, ^{});16 17// CHECK-LABEL: define internal void @_ZN1N9gvarlobalE_block_invoke_7(18  void (^gvarlobal)(void) = ^{};19 20  struct S {21    BL field = ^{};22  };23 24// CHECK-LABEL: define internal void @_ZN1N3blfE_block_invoke_8(25  S blf;26};27