80 lines · plain
1module XA {2 header "a.h"3}4 5module XB {6 module B { header "b.h" }7}8 9module XC {10 header "c.h"11 use XA12 // Intentionally doesn't use XB to show that -fdecl-use isn't transitive.13}14 15module XD {16 header "d.h"17 use XA18 // Intentionally doesn't use XB to show that -fdecl-use isn't transitive.19}20 21module XE {22 header "e.h"23 use XA24 use XB25}26 27module XF {28 header "f.h"29 use XA30 use XB31}32 33module XG {34 header "g.h"35 header "g1.h"36 use XC37 use XE38 use XJ39 use XK40 use XN41}42 43module XH {44 module H { header "h.h" }45 header "h1.h"46 header "s.h"47 use XC48 use XE49}50 51module XJ {52 header "j.h"53}54 55module XK {56 textual header "k.h"57}58 59module XL {60 textual header "l.h"61}62 63module XM {64 private textual header "m.h"65 textual header "m2.h"66}67 68module XN {69 module sub {70 header "sub.h"71 }72}73 74module XS {75}76 77module Textual {78 textual header "textual.h"79}80