// RUN: %clang_cc1 -std=c++1z -fmodules-ts -emit-module-interface %s -o %t.pcm -verify // RUN: %clang_cc1 -std=c++1z -fmodules-ts -emit-module-interface %s -o %t.pcm -verify -DERRORS export module foo; #ifndef ERRORS // expected-no-diagnostics #else // FIXME: diagnose missing module-declaration when building module interface // FIXME: proclaimed-ownership-declarations? export { int a; int b; } export int c; namespace N { export void f() {} } // namespace N export struct T { } t; struct S { export int n; // expected-error {{expected member name or ';'}} export static int n; // expected-error {{expected member name or ';'}} }; void f() { export int n; // expected-error {{expected expression}} } #endif