Diagnostic and cause
СсылкаUnterminated block comment
- Семейство
- topaz
- Этап
- lex
- Код
TPZ0002
Причина и условия
Действия
Write each comment line with /. At the start of an expression, the former / opener produces TPZ2001 during parsing.
Historical compiler facts for the reserved code. These facts describe the former diagnostic, not a 6.0.0 trigger.
Compiler phase: lex.
Compiler explanation: A block comment reached the end of input before its closing delimiter.
Message templates. The marker ⟨value⟩ stands for text computed for the reported program.
- unterminated block comment Source
Observed for the candidate in Topaz 5.21.3. Execution
- error[TPZ0002]: unterminated block comment
TPZ0002 is retired in Topaz 6.0.0 and remains reserved for its former meaning, an unterminated block comment. It must not be emitted or assigned a new meaning.
Reserved code and current rejection
TPZ0002 is retired in Topaz 6.0.0. Its code and former meaning remain reserved and must not be reused. Source comments begin with /. Outside a string or line comment, / supplies the ordinary / and * tokens. At the start of a statement or expression, this sequence produces TPZ2001 in the parse phase. Adding a closing */ does not make it a comment. Whitespace between / and * does not give the sequence a comment meaning.
Причина
One comment spelling makes ignored source text unambiguous. The line-comments-only decision selects /. A retired code keeps its old meaning so stored diagnostics and links remain understandable. Invalid expression tokens use the existing parse diagnostic, which also applies when whitespace separates them.
Response
СсылкаWrite each comment line with /. At the start of an expression, the former / opener produces TPZ2001 during parsing.
Reproduction and verification
СсылкаRejected program
Ссылка/* unfinished comment
Нет стандартного вывода.Ожидаемый результат
Ожидаемый результат
Этап отклонения parse. Ненулевой код завершения.
diagnostic-tpz2001 at
example.tpz:1:1
The expected diagnostic, cause, source location, and accompanying diagnostics are specified below. The verification status records whether this program has been run.
Corrected program
Ссылка// finished comment
Нет стандартного вывода.Ожидаемый результат
Ожидаемый результат
Проверка принимает программу. Код завершения 0.
This program applies the repair described above. The verification status records whether it has been run.