1*70ec1c7eSArgyrios Kyrtzidis // RUN: %clang_cc1 -fsyntax-only %s -chain-include %s -Wuninitialized -Wunused -verify 2*70ec1c7eSArgyrios Kyrtzidis 3*70ec1c7eSArgyrios Kyrtzidis // Make sure there is no crash. 4*70ec1c7eSArgyrios Kyrtzidis 5*70ec1c7eSArgyrios Kyrtzidis #ifndef HEADER 6*70ec1c7eSArgyrios Kyrtzidis #define HEADER 7*70ec1c7eSArgyrios Kyrtzidis 8*70ec1c7eSArgyrios Kyrtzidis #include "non-existent-header.h" 9*70ec1c7eSArgyrios Kyrtzidis 10*70ec1c7eSArgyrios Kyrtzidis class A { 11*70ec1c7eSArgyrios Kyrtzidis public: 12*70ec1c7eSArgyrios Kyrtzidis ~A(); 13*70ec1c7eSArgyrios Kyrtzidis }; 14*70ec1c7eSArgyrios Kyrtzidis 15*70ec1c7eSArgyrios Kyrtzidis class ForwardCls; 16*70ec1c7eSArgyrios Kyrtzidis struct B { 17*70ec1c7eSArgyrios Kyrtzidis ForwardCls f; 18*70ec1c7eSArgyrios Kyrtzidis A a; 19*70ec1c7eSArgyrios Kyrtzidis }; 20*70ec1c7eSArgyrios Kyrtzidis 21*70ec1c7eSArgyrios Kyrtzidis #else 22*70ec1c7eSArgyrios Kyrtzidis test()23*70ec1c7eSArgyrios Kyrtzidisstatic void test() { 24*70ec1c7eSArgyrios Kyrtzidis int x; // expected-warning {{unused}} 25*70ec1c7eSArgyrios Kyrtzidis B b; 26*70ec1c7eSArgyrios Kyrtzidis } 27*70ec1c7eSArgyrios Kyrtzidis 28*70ec1c7eSArgyrios Kyrtzidis #endif 29