// RUN: %clang_cc1 -emit-llvm -triple %itanium_abi_triple -o - %s | FileCheck %s struct A { A() { x = 10; } int x; }; const A x; // CHECK: @_ZL1x = internal global struct X { int (*fp)(int, int); }; int add(int x, int y) { return x + y; } // CHECK: @x2 = {{(dso_local )?}}constant extern const X x2; const X x2 = { &add }; struct X1 { mutable int i; }; struct X2 { X1 array[3]; }; // CHECK: @x2b = {{(dso_local )?}}global extern const X2 x2b; const X2 x2b = { { { 1 }, { 2 }, { 3 } } };