본문으로 건너뛰기
토파즈6.0 · 출시 전
다운로드 →

문서 검색

명세 6.0

방향키로 결과를 고르고 Enter를 눌러 여세요.

API 이름, 진단 번호, 규칙 또는 프로젝트 주제를 입력하세요.

    진단 TPZ2012

    A binding position uses a name reserved for a constructor or language form.

    Diagnostic and cause

    링크

    Reserved binding name

    계열
    topaz
    단계
    parse
    코드
    TPZ2012

    원인과 조건

    A record declaration cannot use set or map as its name.

    대응

    Give the record a different name, such as Item. Keep set and map for collection literals. Use None() to construct an empty Option.

    Compiler phase: parse.

    Compiler explanation: A binding position uses a name reserved for a constructor or language form.

    Message templates. The marker ⟨value⟩ stands for text computed for the reported program.

    • None is the Option constructor (§22.1) and cannot be a binding name Source
    • ⟨value⟩ is reserved for the ⟨value⟩ { … } collection literal (§6) and cannot be a record name Source

    Observed for the candidate in Topaz 5.21.3. Execution

    • error[TPZ2012]: set is reserved for the set { … } collection literal (§6) and cannot be a record name

    The record is named set. Record names set and map are reserved for collection literals. This code also covers reserved None binding positions.

    규칙diagnostics.tpz2012.rule

    Trigger and repair

    A record declaration cannot use set or map as its name.

    Response

    링크

    Give the record a different name, such as Item. Keep set and map for collection literals. Use None() to construct an empty Option.

    Reproduction and verification

    링크

    Rejected program

    링크
    example.tpzRejected program플레이그라운드 열기 →
    1. record set {
    2. value: int
    3. }
    기대 출력0이 아닌 종료 코드
    표준 출력 없음.
    $ topaz check example.tpz · 대상 제품 5.21.3
    기대 결과

    기대 결과

    거절 단계 parse. 종료 코드가 0이 아닙니다.

    The expected diagnostic, cause, source location, and accompanying diagnostics are specified below. The verification status records whether this program has been run.

    Corrected program

    링크
    example.tpzCorrected program
    1. record Item {
    2. value: int
    3. }
    기대 출력종료 코드 0
    $ topaz check example.tpz · 대상 제품 5.21.3
    기대 결과

    기대 결과

    검사가 프로그램을 받아들입니다. 종료 코드 0.

    This program applies the repair described above. The verification status records whether it has been run.

    메뉴

    다운로드 →