Diagnostic and cause
링크Name is not exported
- 계열
- topaz
- 단계
- resolve
- 코드
TPZ3009
원인과 조건
Selecting a private or absent name through an import selection or namespace member produces TPZ3009. An empty export table follows the same rule.
관련 규칙 · Trigger and repair →대응
Select an exported name, or add export to the declaration when it belongs in the public API.
The compiler facts describe the earlier module implementation. The uniform module contract permits empty export tables and rejects unavailable selections with TPZ3009.
Compiler phase: resolve.
Compiler explanation: A selected import or namespace member names something the module does not export.
Message templates. The marker ⟨value⟩ stands for text computed for the reported program.
⟨value⟩is not exported by⟨value⟩⟨value⟩ Source⟨value⟩is not exported by⟨value⟩⟨value⟩ Source
Observed for the candidate in Topaz 5.21.3. Execution
- error[TPZ3009]:
hiddenis not exported bylib
The selected import or namespace member is absent from the target module's exported declarations. A matching private declaration does not make the name available to importers. The same condition applies when the export table is empty.
Trigger and repair
Selecting a private or absent name through an import selection or namespace member produces TPZ3009. An empty export table follows the same rule.
Response
링크Select an exported name, or add export to the declaration when it belongs in the public API.
Reproduction and verification
링크Rejected program
링크import lib { hidden }
표준 출력 없음.let hidden = 1export let visible = 2
기대 결과
The expected diagnostic, cause, source location, and accompanying diagnostics are specified below. The verification status records whether this program has been run.
Corrected program
링크import lib { hidden }
export let hidden = 1export let visible = 2
기대 결과
기대 결과
검사가 프로그램을 받아들입니다. 종료 코드 0.
This program applies the repair described above. The verification status records whether it has been run.