1*7b1a7bd5SAlexey Bataev // RUN: %clang_cc1 %s -fblocks -triple x86_64-apple-darwin -std=c++11 -emit-llvm -o - | FileCheck %s
2*7b1a7bd5SAlexey Bataev // REQUIRES: x86-registered-target
3*7b1a7bd5SAlexey Bataev 
4*7b1a7bd5SAlexey Bataev // CHECK: @b = global i32 0,
5*7b1a7bd5SAlexey Bataev 
6*7b1a7bd5SAlexey Bataev // CHECK: define {{.*}}void @{{.*}}test{{.*}}_block_invoke(
7*7b1a7bd5SAlexey Bataev // CHECK: store i32 2, i32* @b,
8*7b1a7bd5SAlexey Bataev // CHECK: ret void
9*7b1a7bd5SAlexey Bataev 
10*7b1a7bd5SAlexey Bataev int b;
11*7b1a7bd5SAlexey Bataev 
12*7b1a7bd5SAlexey Bataev void test() {
13*7b1a7bd5SAlexey Bataev   int &a = b;
14*7b1a7bd5SAlexey Bataev   ^{ a = 2; };
15*7b1a7bd5SAlexey Bataev }
16