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