1985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner// RUN: %clang_cc1 -triple x86_64-apple-darwin -emit-llvm -o - %s 2985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner// RUN: %clang_cc1 -triple i386-apple-darwin -emit-llvm -o - %s 3e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian 4e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian// PR5463 5e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanianextern "C" int printf(...); 6e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian 7e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanianstruct S { 8e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian double filler; 9e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian}; 10e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian 11e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanianstruct Foo { 12e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian Foo(void) : bar_(), dbar_(), sbar_() { 13e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian for (int i = 0; i < 5; i++) { 14e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian printf("bar_[%d] = %d\n", i, bar_[i]); 15e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian printf("dbar_[%d] = %f\n", i, dbar_[i]); 16e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian printf("sbar_[%d].filler = %f\n", i, sbar_[i].filler); 17e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian } 18e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian } 19e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian 20e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian int bar_[5]; 21e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian double dbar_[5]; 22e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian S sbar_[5]; 23e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian}; 24e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian 25985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattnerint test1(void) { 26e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian Foo a; 27e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian} 28e8b31cc500473f0e2558c77c8a46458deff6ce51Fariborz Jahanian 29985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner// PR7063 30985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner 31985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner 32985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattnerstruct Unit 33985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner{ 34985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner Unit() {} 35985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner Unit(const Unit& v) {} 36985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner}; 37985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner 38985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner 39985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattnerstruct Stuff 40985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner{ 41985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner Unit leafPos[1]; 42985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner}; 43985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner 44985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner 45985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattnerint main() 46985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner{ 47985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner 48985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner Stuff a; 49985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner Stuff b = a; 50985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner 51985f73960ac76842da4b10c30ca87a282ff9aa31Chris Lattner return 0; 52124b3def9ed99dc844225aeb6b17f789307500eeChris Lattner} 53