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 XA 12 // Intentionally doesn't use XB to show that -fdecl-use isn't transitive. 13} 14 15module XD { 16 header "d.h" 17 use XA 18 // Intentionally doesn't use XB to show that -fdecl-use isn't transitive. 19} 20 21module XE { 22 header "e.h" 23 use XA 24 use XB 25} 26 27module XF { 28 header "f.h" 29 use XA 30 use XB 31} 32 33module XG { 34 header "g.h" 35 header "g1.h" 36 use XC 37 use XE 38 use XJ 39 use XK 40 use XN 41} 42 43module XH { 44 module H { header "h.h" } 45 header "h1.h" 46 header "s.h" 47 use XC 48 use XE 49} 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