Перейти к содержимому
Топаз6.0 · До релиза
Загрузка →

Поиск в документации

Спецификация 6.0

Выберите результат стрелками и нажмите Enter, чтобы открыть его.

Введите имя API, номер диагностики, правило или тему проекта.

    Диагностика TPZ3011

    A module tries to export a mutable let binding.

    Diagnostic and cause

    Ссылка

    Mutable export is rejected

    Семейство
    topaz
    Этап
    resolve
    Код
    TPZ3011

    Причина и условия

    An exported mutable let binding produces TPZ3011.

    Действия

    Export an immutable binding. Use a separate operation when callers need to request a change.

    Compiler phase: resolve.

    Compiler explanation: A module tries to export a mutable let binding.

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

    • export let mut is a static error: exported bindings are immutable views Source

    Observed for the candidate in Topaz 5.21.3. Execution

    • error[TPZ3011]: export let mut is a static error: exported bindings are immutable views

    The declaration combines export with let mut. Exported bindings provide immutable views.

    Правилоdiagnostics.tpz3011.rule

    Trigger and repair

    An exported mutable let binding produces TPZ3011.

    Response

    Ссылка

    Export an immutable binding. Use a separate operation when callers need to request a change.

    Reproduction and verification

    Ссылка

    Rejected program

    Ссылка
    example.tpzRejected programОткрыть песочницу →
    1. export let mut value = 1
    Ожидаемый выводНенулевой код завершения
    Нет стандартного вывода.
    $ topaz check example.tpz · Целевой продукт 5.21.3
    Ожидаемый результат

    Ожидаемый результат

    Этап отклонения resolve. Ненулевой код завершения.

    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. export 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.

    Меню

    Загрузка →