Chris Lattner | d3c3856 | 2008-05-04 00:56:25 +0000 | [diff] [blame] | 1 | // RUN: clang -emit-llvm %s -o - |
Lauro Ramos Venancio | 305762c | 2008-02-18 22:44:02 +0000 | [diff] [blame] | 2 | void f1() { |
| 3 | // Scalars in braces. |
| 4 | int a = { 1 }; |
| 5 | int b = { 1, 2 }; |
| 6 | } |
| 7 | |
| 8 | void f2() { |
| 9 | int a[2][2] = { { 1, 2 }, { 3, 4 } }; |
| 10 | int b[3][3] = { { 1, 2 }, { 3, 4 } }; |
| 11 | int *c[2] = { &a[1][1], &b[2][2] }; |
| 12 | int *d[2][2] = { {&a[1][1], &b[2][2]}, {&a[0][0], &b[1][1]} }; |
| 13 | int *e[3][3] = { {&a[1][1], &b[2][2]}, {&a[0][0], &b[1][1]} }; |
Lauro Ramos Venancio | 145cd89 | 2008-02-19 19:27:31 +0000 | [diff] [blame] | 14 | char ext[3][3] = {".Y",".U",".V"}; |
Anders Carlsson | a3881fc | 2008-01-29 01:28:48 +0000 | [diff] [blame] | 15 | } |
Chris Lattner | d3c3856 | 2008-05-04 00:56:25 +0000 | [diff] [blame] | 16 | |
| 17 | typedef void (* F)(void); |
| 18 | extern void foo(void); |
| 19 | struct S { F f; }; |
| 20 | void f3() { |
| 21 | struct S a[1] = { { foo } }; |
| 22 | } |
| 23 | |