1 // RUN: clang-cc -triple x86_64-apple-darwin -std=c++0x -S %s -o %t-64.s &&
2 // RUN: FileCheck -check-prefix LP64 --input-file=%t-64.s %s &&
3 // RUN: clang-cc -triple i386-apple-darwin -std=c++0x -S %s -o %t-32.s &&
4 // RUN: FileCheck -check-prefix LP32 --input-file=%t-32.s %s &&
5 // RUN: true
6 
7 extern "C" int printf(...);
8 
9 static int count;
10 static float fcount;
11 
12 class xpto {
13 public:
14   xpto() : i(count++), f(fcount++) {
15     printf("xpto::xpto()\n");
16   }
17   int i;
18   float f;
19 
20 /**
21   NYI
22   ~xpto() {
23     printf("xpto::~xpto()\n");
24   }
25 */
26 };
27 
28 int main() {
29   xpto array[2][3][4];
30   for (int h = 0; h < 2; h++)
31    for (int i = 0; i < 3; i++)
32     for (int j = 0; j < 4; j++)
33        printf("array[%d][%d][%d] = {%d, %f}\n",
34               h, i, j, array[h][i][j].i, array[h][i][j].f);
35 }
36 
37 // CHECK-LP64: call     __ZN4xptoC1Ev
38 
39 // CHECK-LP32: call     L__ZN4xptoC1Ev
40 
41