copy-in-cplus-object.cpp revision 46a5c5aed460675fd2b5741a40b9883fee7f71f8
104520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanian// RUN: %clang_cc1 %s -fblocks -triple x86_64-apple-darwin -emit-llvm -o - | FileCheck %s 204520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanian 346a5c5aed460675fd2b5741a40b9883fee7f71f8Fariborz Jahanianstruct S { 446a5c5aed460675fd2b5741a40b9883fee7f71f8Fariborz Jahanian S(const char *); 546a5c5aed460675fd2b5741a40b9883fee7f71f8Fariborz Jahanian ~S(); 646a5c5aed460675fd2b5741a40b9883fee7f71f8Fariborz Jahanian}; 746a5c5aed460675fd2b5741a40b9883fee7f71f8Fariborz Jahanian 804520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanianstruct TestObject 904520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanian{ 1046a5c5aed460675fd2b5741a40b9883fee7f71f8Fariborz Jahanian TestObject(const TestObject& inObj, int def = 100, const S &Silly = "silly"); 1104520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanian TestObject(); 1204520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanian TestObject& operator=(const TestObject& inObj); 1304520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanian int version() const; 1404520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanian 1504520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanian}; 1604520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanian 1704520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanianvoid testRoutine() { 1804520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanian TestObject one; 1904520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanian int (^V)() = ^{ return one.version(); }; 2004520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanian} 2104520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanian 2246a5c5aed460675fd2b5741a40b9883fee7f71f8Fariborz Jahanian// CHECK: call void @_ZN10TestObjectC1Ev 2346a5c5aed460675fd2b5741a40b9883fee7f71f8Fariborz Jahanian// CHECK: call void @_ZN1SC1EPKc 2446a5c5aed460675fd2b5741a40b9883fee7f71f8Fariborz Jahanian// CHECK: call void @_ZN10TestObjectC1ERKS_iRK1S 2546a5c5aed460675fd2b5741a40b9883fee7f71f8Fariborz Jahanian// CHECK: call void @_ZN1SD1Ev 2604520839ece1d6292b1cac3732a3d04b985b1fc9Fariborz Jahanian 27