1module XA { 2 header "a.h" 3} 4 5module XB { 6 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 header "unavailable.h" 24 use XA 25 use XB 26} 27 28module XF { 29 header "f.h" 30 header "unavailable.h" 31 use XA 32 use XB 33} 34 35module XG { 36 header "g.h" 37 header "g1.h" 38 use XC 39 use XE 40 use XJ 41 use XK 42} 43 44module XH { 45 header "h.h" 46 header "h1.h" 47 header "s.h" 48 use XC 49 use XE 50} 51 52module XJ { 53 header "j.h" 54} 55 56module XK { 57 textual header "k.h" 58} 59 60module XL { 61 textual header "l.h" 62} 63 64module XM { 65 private textual header "m.h" 66 textual header "m2.h" 67} 68 69module XS { 70} 71