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

문서 검색

명세 6.0

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

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

    진단 TPZ4003

    A range value used zero as its step.

    Diagnostic and cause

    링크

    Range step is zero

    계열
    topaz
    단계
    run
    코드
    TPZ4003

    원인과 조건

    Constructing a range with a computed int step of zero faults before the range can be iterated.

    대응

    Pass a nonzero step. Use a negative step only with descending endpoints; the repair changes the step to one for 0..5.

    Compiler phase: runtime.

    Compiler explanation: A range value used zero as its step.

    Message templates are Pending. The explanation above is not an observed CLI message.

    The evaluated range step is zero. Range construction requires a nonzero int step so traversal can make progress.

    규칙diagnostics.tpz4003.rule

    Trigger and repair

    Constructing a range with a computed int step of zero faults before the range can be iterated.

    Response

    링크

    Pass a nonzero step. Use a negative step only with descending endpoints; the repair changes the step to one for 0..5.

    Reproduction and verification

    링크

    Product diagnostic test

    링크
    example.tpzProduct diagnostic test플레이그라운드 열기 →
    1. function collect(step: int) -> () {
    2. for value in (0..5 by step) { value }
    3. ()
    4. }
    5. collect(0)
    대상 제품 5.21.3
    기대 결과

    기대 결과

    The separate diagnostic product test validates this command, runtime diagnostic, or filesystem setup. The shared example runner does not execute that assertion plan.

    Run topaz run example.tpz --language-version 5.21.

    Expect exit status 1, empty standard output, and TPZ4003.

    The evaluated range step is zero. Range construction requires a nonzero int step so traversal can make progress.

    The primary location is example.tpz:2:19.

    Expect exactly one diagnostic.

    The diagnostic product test checks these expectations with the same files and command.

    Corrected program

    링크
    example.tpzCorrected program
    1. function collect(step: int) -> () {
    2. for value in (0..5 by step) { value }
    3. ()
    4. }
    5. collect(1)
    기대 출력종료 코드 0
    표준 출력 없음.
    $ topaz run example.tpz · 대상 제품 5.21.3
    기대 결과

    기대 결과

    실행을 마칩니다. 종료 코드 0.

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

    메뉴

    다운로드 →