mirror of
https://github.com/rust-lang/rust.git
synced 2026-01-20 06:10:39 +00:00
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
| ^
```
20 lines
408 B
Plaintext
20 lines
408 B
Plaintext
error: mismatched closing delimiter: `}`
|
|
--> $DIR/issue-81804.rs:6:8
|
|
|
|
|
LL | fn p([=(}
|
|
| ^^ mismatched closing delimiter
|
|
| |
|
|
| unclosed delimiter
|
|
|
|
error: this file contains an unclosed delimiter
|
|
--> $DIR/issue-81804.rs:6:11
|
|
|
|
|
LL | fn p([=(}
|
|
| -- ^
|
|
| ||
|
|
| |unclosed delimiter
|
|
| unclosed delimiter
|
|
|
|
error: aborting due to 2 previous errors
|
|
|