1// RUN: %clang -x c-header -o %t.pch %s 2// RUN: echo > %t.empty.c 3// RUN: %clang -include %t -x c %t.empty.c -emit-llvm -S -o - 4 5// PR 4489: Crash with PCH 6// PR 4492: Crash with PCH (round two) 7// PR 4509: Crash with PCH (round three) 8typedef struct _IO_FILE FILE; 9extern int fprintf (struct _IO_FILE *__restrict __stream, 10 __const char *__restrict __format, ...); 11 12int x(void) 13{ 14 switch (1) { 15 case 2: ; 16 int y = 0; 17 } 18} 19 20void y(void) { 21 extern char z; 22 fprintf (0, "a"); 23} 24 25struct y0 { int i; } y0[1] = {}; 26 27void x0(void) 28{ 29 extern char z0; 30 fprintf (0, "a"); 31} 32 33void x1(void) 34{ 35 fprintf (0, "asdf"); 36} 37 38void y1(void) 39{ 40 extern char e; 41 fprintf (0, "asdf"); 42} 43