// REQUIRES: target={{.*}}-{{darwin|macos}}{{.*}} // RUN: %clang_cc1 -fblocks -triple arm64-apple-darwin -emit-llvm -o - %s | FileCheck %s // RUN: %clang_cc1 -fblocks -x objective-c++ -triple arm64-apple-darwin -emit-llvm -o - %s | FileCheck %s typedef struct { int a; } BlockState; typedef void(^InBlock)(int); void sink(InBlock); int doMagic(void) { __block BlockState state; sink(^(int in) { state.a += in; }); return state.a; } // block layout in the regular c-string section // CHECK: @OBJC_LAYOUT_BITMAP_{{.*}} = private unnamed_addr constant {{.*}} section "__TEXT,__cstring,cstring_literals"