// Tests that the definition in private module fragment is not reachable to its users.
//
// RUN: rm -rf %t
// RUN: mkdir -p %t
// RUN: split-file %s %t
//
// RUN: %clang_cc1 -std=c++20 %t/Private.cppm -emit-module-interface -o %t/Private.pcm
// RUN: %clang_cc1 -std=c++20 -fprebuilt-module-path=%t %t/Use.cpp -verify -fsyntax-only
//--- Private.cppm
export module Private;
inline void ; // OK, module-linkage inline function
static void ;
export ;
export void
export X *; // OK
module :private;
; // definition not reachable from importers of A
X *
void
void
//--- Use.cpp
import Private;
void