// no PCH // RUN: %clang_cc1 -include %s -include %s -fsyntax-only %s // with PCH // RUN: %clang_cc1 -chain-include %s -chain-include %s -fsyntax-only %s // with PCH, with modules enabled // RUN: %clang_cc1 -chain-include %s -chain-include %s -fsyntax-only -fmodules %s #if !defined(PASS1) #define PASS1 namespace ns {} namespace os {} #elif !defined(PASS2) #define PASS2 namespace ns { namespace { extern int x; } } namespace { extern int y; } namespace { } namespace os { extern "C" { namespace { extern int z; } } } #else namespace ns { namespace { int x; } void test() { (void)x; } } namespace { int y; } void test() { (void)y; } namespace os { namespace { int z; } void test() { (void)z; } } #endif