1*67e74705SXin Li // Test this without pch. 2*67e74705SXin Li // RUN: %clang_cc1 -include %S/struct.h -fsyntax-only -verify %s 3*67e74705SXin Li 4*67e74705SXin Li // Test with pch. 5*67e74705SXin Li // RUN: %clang_cc1 -emit-pch -o %t %S/struct.h 6*67e74705SXin Li // RUN: %clang_cc1 -include-pch %t -fsyntax-only -verify %s 7*67e74705SXin Li 8*67e74705SXin Li struct Point *p1; 9*67e74705SXin Li getX(struct Point * p1)10*67e74705SXin Lifloat getX(struct Point *p1) { 11*67e74705SXin Li return p1->x; 12*67e74705SXin Li } 13*67e74705SXin Li get_fun_ptr()14*67e74705SXin Livoid *get_fun_ptr() { 15*67e74705SXin Li return fun->is_ptr? fun->ptr : 0; 16*67e74705SXin Li } 17*67e74705SXin Li 18*67e74705SXin Li struct Fun2 { 19*67e74705SXin Li int very_fun; 20*67e74705SXin Li }; 21*67e74705SXin Li get_very_fun()22*67e74705SXin Liint get_very_fun() { 23*67e74705SXin Li return fun2->very_fun; 24*67e74705SXin Li } 25*67e74705SXin Li 26*67e74705SXin Li int *int_ptr_fail = &fun->is_ptr; // expected-error{{address of bit-field requested}} 27*67e74705SXin Li 28*67e74705SXin Li struct Nested nested = { 1, 2 }; 29