Diagnostic and cause
LinkUnresolved module
- Family
- topaz
- Phase
- resolve
- Code
TPZ3001
Cause and conditions
An import of a user module requires a source file at the exact dotted path under the selected root. A missing file produces TPZ3001.
Related rule: Trigger and repairResponse
Add the module at its dotted path or correct the import spelling. Export the declarations that importers need.
Source evidence
- compiler/crates/topaz_diag/src/explain.rs at
151141d7bb44· 341-350 - compiler/crates/topaz_self_frontend/topaz/resolver/graph.tpz at
151141d7bb44· 626-626 - compiler/crates/topaz_self_frontend/topaz/resolver/graph.tpz at
151141d7bb44· 139-184 - compiler/crates/topaz_self_frontend/topaz/resolver/graph.tpz at
151141d7bb44· 785-805 - TPZ3001 at
151141d7bb44
Compiler phase: resolve.
Compiler explanation: An import path could not be resolved under the active module root.
Message templates. The marker ⟨value⟩ stands for text computed for the reported program.
- entry file
⟨value⟩does not exist Source
Observed for the candidate in Topaz 5.21.3. Execution
- error[TPZ3001]: no module file for
missing(expectedmissing.by exact scalars)tpz
The imported user module has no source file at its exact path under the selected root. The example imports missing without providing missing.tpz.
Trigger and repair
An import of a user module requires a source file at the exact dotted path under the selected root. A missing file produces TPZ3001.
Source evidence
- compiler/crates/topaz_self_frontend/topaz/resolver/graph.tpz at
151141d7bb44· 139-184 - compiler/crates/topaz_self_frontend/topaz/resolver/graph.tpz at
151141d7bb44· 785-805 - TPZ3001 at
151141d7bb44
Response
LinkAdd the module at its dotted path or correct the import spelling. Export the declarations that importers need.
Reproduction and verification
LinkRejected program
Linkimport missing
No stdout.
Expected result
The expected diagnostic, cause, source location, and accompanying diagnostics are specified below. The verification status records whether this program has been run.
Source evidence
- compiler/crates/topaz_diag/src/explain.rs at
151141d7bb44· 341-350 - compiler/crates/topaz_self_frontend/topaz/resolver/graph.tpz at
151141d7bb44· 626-626 - compiler/crates/topaz_self_frontend/topaz/resolver/graph.tpz at
151141d7bb44· 139-184 - compiler/crates/topaz_self_frontend/topaz/resolver/graph.tpz at
151141d7bb44· 785-805 - TPZ3001 at
151141d7bb44
Corrected program
Linkimport missing
export let value = 1
Expected result
Expected result
Checking accepts the program. Exit code 0.
This program applies the repair described above. The verification status records whether it has been run.
Source evidence
- compiler/crates/topaz_self_frontend/topaz/resolver/graph.tpz at
151141d7bb44· 139-184 - compiler/crates/topaz_self_frontend/topaz/resolver/graph.tpz at
151141d7bb44· 785-805 - TPZ3001 at
151141d7bb44