lean4-htt/tests/pkg/module/Module/ImportedPrivateImported.lean
Sebastian Ullrich e2f757d5a7
feat: private import and import all (#8159)
This PR adds support for the following import variants to the
experimental module system:

* `private import`: Makes the imported constants available only in
non-exported contexts such as proofs. In particular, the import will not
be loaded, or required to exist at all, when the current module is
imported into other modules.
* `import all`: Makes non-exported information such as proofs of the
imported module available in non-exported contexts in the current
module. Main purpose is to allow for reasoning about imported
definitions when they would otherwise be opaque. TODO: adjust name
resolution so that imported `private` decls are accessible through
syntax.

They can be combined into `private import all`, which will likely be the
most common usage of `import all`.
2025-04-30 10:06:54 +00:00

10 lines
159 B
Text

module
prelude
import Module.PrivateImported
/-! `private import` should not be transitive. -/
/-- error: unknown identifier 'f' -/
#guard_msgs in
#check f