xref: /minix3/external/bsd/llvm/dist/clang/test/Modules/Inputs/cxx-decls-merged.h (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1*0a6a1f1dSLionel Sambuc extern int mergeUsedFlag;
2*0a6a1f1dSLionel Sambuc 
3*0a6a1f1dSLionel Sambuc typedef struct {
4*0a6a1f1dSLionel Sambuc   int n;
5*0a6a1f1dSLionel Sambuc   int m;
6*0a6a1f1dSLionel Sambuc } NameForLinkage;
7*0a6a1f1dSLionel Sambuc extern NameForLinkage name_for_linkage;
8*0a6a1f1dSLionel Sambuc 
9*0a6a1f1dSLionel Sambuc struct HasVirtualFunctions {
10*0a6a1f1dSLionel Sambuc   virtual void f();
11*0a6a1f1dSLionel Sambuc };
12*0a6a1f1dSLionel Sambuc struct OverridesVirtualFunctions : HasVirtualFunctions {
13*0a6a1f1dSLionel Sambuc   void f();
14*0a6a1f1dSLionel Sambuc };
15*0a6a1f1dSLionel Sambuc extern OverridesVirtualFunctions overrides_virtual_functions;
16*0a6a1f1dSLionel Sambuc extern "C" void ExternCFunction();
17*0a6a1f1dSLionel Sambuc 
18*0a6a1f1dSLionel Sambuc typedef struct {
19*0a6a1f1dSLionel Sambuc   struct Inner {
20*0a6a1f1dSLionel Sambuc     int n;
21*0a6a1f1dSLionel Sambuc   };
22*0a6a1f1dSLionel Sambuc } NameForLinkage2;
23*0a6a1f1dSLionel Sambuc auto name_for_linkage2_inner_b = NameForLinkage2::Inner();
24*0a6a1f1dSLionel Sambuc typedef decltype(name_for_linkage2_inner_b) NameForLinkage2Inner;
25*0a6a1f1dSLionel Sambuc 
26*0a6a1f1dSLionel Sambuc namespace Aliased { extern int b; }
27*0a6a1f1dSLionel Sambuc namespace Alias = Aliased;
28