// RUN: %clang_cc1 -emit-llvm %s -o %t | |
int A[10] = { 1,2,3,4,5 }; | |
extern int x[]; | |
void foo() { x[0] = 1; } | |
int x[10]; | |
void bar() { x[0] = 1; } | |
extern int y[]; | |
void *g = y; | |
int latin_ptr2len (char *p); | |
int (*mb_ptr2len) (char *p) = latin_ptr2len; | |
char string[8] = "string"; // extend init | |
char string2[4] = "string"; // truncate init | |
char *test(int c) { | |
static char buf[10]; | |
static char *bufptr = buf; | |
return c ? buf : bufptr; | |
} | |
_Bool booltest = 0; | |
void booltest2() { | |
static _Bool booltest3 = 4; | |
} | |
// Scalars in braces. | |
static int a = { 1 }; | |
// References to enums. | |
enum { | |
EnumA, EnumB | |
}; | |
int c[] = { EnumA, EnumB }; | |
// Binary operators | |
int d[] = { EnumA | EnumB }; | |
// PR1968 | |
static int array[]; | |
static int array[4]; | |