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

문서 검색

명세 6.0

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

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

    진단 TPZ2001

    The parser found a token that cannot appear in this grammar position.

    Diagnostic and cause

    링크

    Unexpected token

    계열
    topaz
    단계
    parse
    코드
    TPZ2001

    원인과 조건

    A let declaration has a binding pattern before =. Omitting it is a parse error.

    대응

    Insert the intended binding name between let and =. Fix this first parse error before interpreting any recovery messages.

    Compiler phase: parse.

    Compiler explanation: The parser found a token that cannot appear in this grammar position.

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

    • expected an expression Source
    • expected a statement separator Source
    • expected a statement Source
    • a record spread ... must be the FIRST element and appear at most once Source
    • expected , or } Source
    • expected : after timeout Source
    • expected a duration literal, e.g. 3s Source
    • expected a concurrent arm Source
    • concurrent requires at least one arm Source
    • expected case Source
    • match requires at least one case Source
    • expected a range endpoint after .., e.g. 1..5 Source
    • a record type requires at least one field Source
    • a literal type cannot contain interpolation Source
    • a record pattern requires at least one field Source

    Observed for the candidate in Topaz 5.21.3. Execution

    • error[TPZ2001]: expected an expression

    A let declaration needs a binding pattern before its initializer. In the reproduction, = appears where that pattern must begin, so parsing stops at the equals sign.

    규칙diagnostics.tpz2001.rule

    Trigger and repair

    A let declaration has a binding pattern before =. Omitting it is a parse error.

    Response

    링크

    Insert the intended binding name between let and =. Fix this first parse error before interpreting any recovery messages.

    Reproduction and verification

    링크

    Rejected program

    링크
    example.tpzRejected program플레이그라운드 열기 →
    1. let = 1
    기대 출력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. let value = 1
    기대 출력종료 코드 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.

    메뉴

    다운로드 →