1651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// RUN: %clang_cc1 -triple %itanium_abi_triple -emit-llvm -o - %s | FileCheck %s
2ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
3ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaostruct X { };
4ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
5ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// CHECK: @x1 = global %struct.X zeroinitializer
6ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// CHECK: @x4 = global %struct.X zeroinitializer
7ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// CHECK: @x2 = external global %struct.X
8ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// CHECK: @x3 = external global %struct.X
9ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaoextern "C" {
10ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  X x1;
11ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}
12ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
13ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaoextern "C" X x2;
14ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
15ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaoextern X x3;
16ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
17ea285162342df160e7860e26528bc7110bc6c0cdShih-wei LiaoX x4;
18ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
19ea285162342df160e7860e26528bc7110bc6c0cdShih-wei LiaoX& get(int i) {
20ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  if (i == 1)
21ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao    return x1;
22ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  else if (i == 2)
23ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao    return x2;
24ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  else if (i == 3)
25ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao    return x3;
26ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  else
27ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao    return x4;
28ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}
29