Clang Project

clang_source_code/test/Modules/using-decl-friend.cpp
1// RUN: %clang_cc1 -fmodules %s -verify
2// expected-no-diagnostics
3
4#pragma clang module build A
5module A {}
6#pragma clang module contents
7#pragma clang module begin A
8namespace N {
9  class X;
10}
11#pragma clang module end
12#pragma clang module endbuild
13
14#pragma clang module build B
15module B {
16  module X {}
17  module Y {}
18}
19#pragma clang module contents
20#pragma clang module begin B.X
21namespace N {
22  class Friendly {
23    friend class X;
24  };
25}
26#pragma clang module end
27#pragma clang module begin B.Y
28namespace N {
29  class X;
30}
31#pragma clang module end
32#pragma clang module endbuild
33
34#pragma clang module import A
35#pragma clang module import B.X
36using N::X;
37X *p;
38