This PR fixes an issue where the use of private imports led to unknown namespaces in downstream modules. Fixes #12833
34 lines
806 B
Text
34 lines
806 B
Text
module
|
|
|
|
import Module.Basic
|
|
|
|
/-! `private import` should allow only private access to imported decls. -/
|
|
|
|
public def g := f
|
|
|
|
/--
|
|
error: Unknown identifier `f`
|
|
|
|
Note: A public declaration `f` exists but is imported privately; consider adding `public import Module.Basic`.
|
|
-/
|
|
#guard_msgs in
|
|
public theorem t2 : f = 1 := sorry
|
|
|
|
/--
|
|
error: Unknown identifier `f`
|
|
|
|
Note: A public declaration `f` exists but is imported privately; consider adding `public import Module.Basic`.
|
|
-/
|
|
#guard_msgs in
|
|
@[expose] public def h : True := f
|
|
|
|
/-! `initialize` should be run even if imported IR-only. -/
|
|
|
|
public def publicDefOfPrivatelyInitialized := initialized
|
|
|
|
/-! #12198: `local simp` should be accepted on privately imported theorem -/
|
|
|
|
attribute [local simp] t
|
|
|
|
/-- Setup for #12833. -/
|
|
public def Namespaced.def2 := 0
|