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
:aftertimeoutSource - expected a duration literal, e.g.
3sSource - expected a concurrent arm Source
concurrentrequires at least one arm Source- expected
caseSource matchrequires at least onecaseSource- expected a range endpoint after
., e.g.. 1.Source. 5 - 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.
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
Ссылкаlet = 1
Нет стандартного вывода.Ожидаемый результат
Ожидаемый результат
Этап отклонения parse. Ненулевой код завершения.
diagnostic-tpz2001 at
example.tpz:1:5
The expected diagnostic, cause, source location, and accompanying diagnostics are specified below. The verification status records whether this program has been run.
Corrected program
Ссылкаlet value = 1
Ожидаемый результат
Ожидаемый результат
Проверка принимает программу. Код завершения 0.
This program applies the repair described above. The verification status records whether it has been run.