blob: 2bd43b99a5d94880faa242a0f09994e64ff61cbb [file] [log] [blame]
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +00001// RUN: %clang_cc1 -emit-llvm -o - %s | FileCheck %s
Eli Friedmanb095e152009-12-11 21:23:03 +00002
3struct A {
4 A() { x = 10; }
5 int x;
6};
7
8const A x;
9
Alexis Huntaecc45c2010-01-24 03:04:27 +000010// CHECK: @_ZL1x = internal global
Douglas Gregor2d1c0552011-05-07 22:06:45 +000011
12struct X {
13 int (*fp)(int, int);
14};
15
16int add(int x, int y) { return x + y; }
17
18// CHECK: @x2 = constant
19extern const X x2;
20const X x2 = { &add };
Douglas Gregor61226d32011-05-13 01:05:07 +000021
22struct X1 {
23 mutable int i;
24};
25
26struct X2 {
27 X1 array[3];
28};
29
30// CHECK: @x2b = global
31extern const X2 x2b;
32const X2 x2b = { { { 1 }, { 2 }, { 3 } } };