Files
clang-p2996/clang/test/Modules/Inputs/declare-use/module.map
Richard Smith a002063de3 Enforce module decl-use restrictions and private header restrictions in textual headers
Per the documentation, these restrictions were intended to apply to textual headers but previously this didn't work because we decided there was no requesting module when the `#include` was in a textual header.

A `-cc1` flag is provided to restore the old behavior for transitionary purposes.

Reviewed By: aaron.ballman

Differential Revision: https://reviews.llvm.org/D132779
2022-09-06 17:12:57 -07:00

80 lines
874 B
Plaintext

module XA {
header "a.h"
}
module XB {
module B { header "b.h" }
}
module XC {
header "c.h"
use XA
// Intentionally doesn't use XB to show that -fdecl-use isn't transitive.
}
module XD {
header "d.h"
use XA
// Intentionally doesn't use XB to show that -fdecl-use isn't transitive.
}
module XE {
header "e.h"
use XA
use XB
}
module XF {
header "f.h"
use XA
use XB
}
module XG {
header "g.h"
header "g1.h"
use XC
use XE
use XJ
use XK
use XN
}
module XH {
module H { header "h.h" }
header "h1.h"
header "s.h"
use XC
use XE
}
module XJ {
header "j.h"
}
module XK {
textual header "k.h"
}
module XL {
textual header "l.h"
}
module XM {
private textual header "m.h"
textual header "m2.h"
}
module XN {
module sub {
header "sub.h"
}
}
module XS {
}
module Textual {
textual header "textual.h"
}