Diagnostic and cause
LinkInvalid qualified type
- Family
- topaz
- Phase
- check
- Code
TPZ5025
Cause and conditions
Response
Import the namespace and refer to an exported type. Do not use an ordinary value or a private name as a qualified type.
Source evidence
- compiler/crates/topaz_diag/src/explain.rs at
151141d7bb44· 739-747
Compiler phase: check.
Compiler explanation: A qualified type path does not resolve through a valid namespace/type export.
Message templates are Pending. The explanation above is not an observed CLI message.
A qualified type path does not identify a type exported through a usable module namespace.
Response
LinkImport the namespace and refer to an exported type. Do not use an ordinary value or a private name as a qualified type.
Reproduction and verification
LinkReproduction candidate
Linklet value: missing.Item = 1
Expected result
Expected result
The SELF resolver rejects this candidate as TPZ3013 before type checking. No current SELF producer for the registered TPZ5025 identity was found, so a public reproduction of that diagnostic remains undetermined. Next investigation: Trace qualified type references from compiler/crates/topaz_self_frontend/topaz/resolver/scopes_walk.tpz:818-840 into compiler/crates/topaz_self_frontend/topaz/checker/nominals.tpz:611-618. Look for an admitted namespace path that reaches a distinct checking error. Compare compiler/crates/topaz_check/src/form/formation.rs:531-546 to identify the legacy fallback, without treating Rust behavior as SELF evidence.
Candidate command: topaz check example.tpz --language-version 5.21. Intended diagnostic: TPZ5025. Recorded CLI exit: 1. Recorded diagnostic codes: TPZ3013. Message and location verification remain Pending.
Source evidence
- compiler/crates/topaz_diag/src/explain.rs at
151141d7bb44· 739-747