rust/tests/ui/parser/bad-char-literals.stderr
Esteban Küber 2d7795dfb9 Be more accurate about calculating display_col from a BytePos
No longer track "zero-width" chars in `SourceMap`, read directly from the line when calculating the `display_col` of a `BytePos`. Move `char_width` to `rustc_span` and use it from the emitter.

This change allows the following to properly align in terminals (depending on the font, the replaced control codepoints are rendered as 1 or 2 width, on my terminal they are rendered as 1, on VSCode text they are rendered as 2):

```
error: this file contains an unclosed delimiter
  --> $DIR/issue-68629.rs:5:17
   |
LL | ␜␟ts␀![{i
   |       -- unclosed delimiter
   |       |
   |       unclosed delimiter
LL | ␀␀  fn rݻoa>rݻm
   |                ^
```
2024-07-18 20:08:38 +00:00

60 lines
1.0 KiB
Plaintext

error: character constant must be escaped: `'`
--> $DIR/bad-char-literals.rs:6:6
|
LL | ''';
| ^
|
help: escape the character
|
LL | '\'';
| ~~
error: character constant must be escaped: `\n`
--> $DIR/bad-char-literals.rs:10:6
|
LL | '
| ______^
LL | | ';
| |_
|
help: escape the character
|
LL | '\n';
| ++
error: character constant must be escaped: `\r`
--> $DIR/bad-char-literals.rs:15:6
|
LL | '␍';
| ^
|
help: escape the character
|
LL | '\r';
| ++
error: character literal may only contain one codepoint
--> $DIR/bad-char-literals.rs:18:5
|
LL | '-␀-';
| ^^^^^
|
help: if you meant to write a string literal, use double quotes
|
LL | "-␀-";
| ~ ~
error: character constant must be escaped: `\t`
--> $DIR/bad-char-literals.rs:21:6
|
LL | ' ';
| ^^^^
|
help: escape the character
|
LL | '\t';
| ++
error: aborting due to 5 previous errors