1651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// RUN: %clang_cc1 -triple x86_64-apple-darwin -std=c++11 -emit-llvm %s -o - | \ 2651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// RUN: FileCheck %s 3651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// RUN: %clang_cc1 -triple i386-apple-darwin -std=c++11 -emit-llvm %s -o - | \ 4651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// RUN: FileCheck %s 5ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian 6ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanianextern "C" int printf(...); 7ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian 8ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanianstatic int count; 9ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanianstatic float fcount; 10ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian 11ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanianclass xpto { 12ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanianpublic: 13ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian xpto() : i(count++), f(fcount++) { 14ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian printf("xpto::xpto()\n"); 15ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian } 16ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian int i; 17ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian float f; 18ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian 19ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian ~xpto() { 20ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian printf("xpto::~xpto()\n"); 21ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian } 22ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian}; 23ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian 24ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanianint main() { 25ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian xpto array[2][3][4]; 26ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian for (int h = 0; h < 2; h++) 27ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian for (int i = 0; i < 3; i++) 28ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian for (int j = 0; j < 4; j++) 29ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian printf("array[%d][%d][%d] = {%d, %f}\n", 30ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian h, i, j, array[h][i][j].i, array[h][i][j].f); 31ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian} 32ae013b9da64b48f22ca82828aa3c7a909f99dbd7Fariborz Jahanian 33651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: call void @_ZN4xptoC1Ev 34