1*f4a2713aSLionel Sambuc // RUN: %clang_cc1 -triple x86_64-apple-darwin -emit-llvm -o - %s 2*f4a2713aSLionel Sambuc // RUN: %clang_cc1 -triple i386-apple-darwin -emit-llvm -o - %s 3*f4a2713aSLionel Sambuc 4*f4a2713aSLionel Sambuc // PR5463 5*f4a2713aSLionel Sambuc extern "C" int printf(...); 6*f4a2713aSLionel Sambuc 7*f4a2713aSLionel Sambuc struct S { 8*f4a2713aSLionel Sambuc double filler; 9*f4a2713aSLionel Sambuc }; 10*f4a2713aSLionel Sambuc 11*f4a2713aSLionel Sambuc struct Foo { FooFoo12*f4a2713aSLionel Sambuc Foo(void) : bar_(), dbar_(), sbar_() { 13*f4a2713aSLionel Sambuc for (int i = 0; i < 5; i++) { 14*f4a2713aSLionel Sambuc printf("bar_[%d] = %d\n", i, bar_[i]); 15*f4a2713aSLionel Sambuc printf("dbar_[%d] = %f\n", i, dbar_[i]); 16*f4a2713aSLionel Sambuc printf("sbar_[%d].filler = %f\n", i, sbar_[i].filler); 17*f4a2713aSLionel Sambuc } 18*f4a2713aSLionel Sambuc } 19*f4a2713aSLionel Sambuc 20*f4a2713aSLionel Sambuc int bar_[5]; 21*f4a2713aSLionel Sambuc double dbar_[5]; 22*f4a2713aSLionel Sambuc S sbar_[5]; 23*f4a2713aSLionel Sambuc }; 24*f4a2713aSLionel Sambuc test1(void)25*f4a2713aSLionel Sambucint test1(void) { 26*f4a2713aSLionel Sambuc Foo a; 27*f4a2713aSLionel Sambuc } 28*f4a2713aSLionel Sambuc 29*f4a2713aSLionel Sambuc // PR7063 30*f4a2713aSLionel Sambuc 31*f4a2713aSLionel Sambuc 32*f4a2713aSLionel Sambuc struct Unit 33*f4a2713aSLionel Sambuc { UnitUnit34*f4a2713aSLionel Sambuc Unit() {} UnitUnit35*f4a2713aSLionel Sambuc Unit(const Unit& v) {} 36*f4a2713aSLionel Sambuc }; 37*f4a2713aSLionel Sambuc 38*f4a2713aSLionel Sambuc 39*f4a2713aSLionel Sambuc struct Stuff 40*f4a2713aSLionel Sambuc { 41*f4a2713aSLionel Sambuc Unit leafPos[1]; 42*f4a2713aSLionel Sambuc }; 43*f4a2713aSLionel Sambuc 44*f4a2713aSLionel Sambuc main()45*f4a2713aSLionel Sambucint main() 46*f4a2713aSLionel Sambuc { 47*f4a2713aSLionel Sambuc 48*f4a2713aSLionel Sambuc Stuff a; 49*f4a2713aSLionel Sambuc Stuff b = a; 50*f4a2713aSLionel Sambuc 51*f4a2713aSLionel Sambuc return 0; 52*f4a2713aSLionel Sambuc } 53