Esteban Küber
1d78004575
Add Unicode block-drawing compiler output support
...
Add nightly-only theming support to rustc output using Unicode box
drawing characters instead of ASCII-art to draw the terminal UI:
After:
```
error: foo
╭▸ test.rs:3:3
│
3 │ X0 Y0 Z0
│ ┌───╿──│──┘
│ ┌│───│──┘
│ ┏││━━━┙
│ ┃││
4 │ ┃││ X1 Y1 Z1
5 │ ┃││ X2 Y2 Z2
│ ┃│└────╿──│──┘ `Z` label
│ ┃└─────│──┤
│ ┗━━━━━━┥ `Y` is a good letter too
│ `X` is a good letter
╰╴
note: bar
╭▸ test.rs:4:3
│
4 │ ┏ X1 Y1 Z1
5 │ ┃ X2 Y2 Z2
6 │ ┃ X3 Y3 Z3
│ ┗━━━━━━━━━━┛
├ note: bar
╰ note: baz
note: qux
╭▸ test.rs:4:3
│
4 │ X1 Y1 Z1
╰╴ ━━━━━━━━
```
Before:
```
error: foo
--> test.rs:3:3
|
3 | X0 Y0 Z0
| ___^__-__-
| |___|__|
| ||___|
| |||
4 | ||| X1 Y1 Z1
5 | ||| X2 Y2 Z2
| |||____^__-__- `Z` label
| ||_____|__|
| |______| `Y` is a good letter too
| `X` is a good letter
|
note: bar
--> test.rs:4:3
|
4 | / X1 Y1 Z1
5 | | X2 Y2 Z2
6 | | X3 Y3 Z3
| |__________^
= note: bar
= note: baz
note: qux
--> test.rs:4:3
|
4 | X1 Y1 Z1
| ^^^^^^^^
```
2024-11-10 23:57:18 +01:00
Nadrieril
99468bb760
Update tests
2024-08-10 12:07:17 +02:00
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
Michael Goulet
ffd72b1700
Fix remaining cases
2024-06-21 19:00:18 -04:00
klensy
411607bec4
tests: remove some trailing ws
2024-04-27 10:54:31 +03:00
klensy
21e97a67ab
tests: remove few ignore-stage2
...
beta was branched long ago, so can be removed
2024-04-25 10:48:11 +03:00
Esteban Küber
957c0d3488
Side-step small SVG width divergence by setting min-width
2024-03-18 16:40:43 +00:00
Esteban Küber
cc9631a371
When displaying multispans, ignore empty lines adjacent to ...
...
```
error[E0308]: `match` arms have incompatible types
--> tests/ui/codemap_tests/huge_multispan_highlight.rs:98:18
|
6 | let _ = match true {
| ---------- `match` arms have incompatible types
7 | true => (
| _________________-
8 | | // last line shown in multispan header
... |
96 | |
97 | | ),
| |_________- this is found to be of type `()`
98 | false => "
| __________________^
... |
119 | |
120 | | ",
| |_________^ expected `()`, found `&str`
error[E0308]: `match` arms have incompatible types
--> tests/ui/codemap_tests/huge_multispan_highlight.rs:215:18
|
122 | let _ = match true {
| ---------- `match` arms have incompatible types
123 | true => (
| _________________-
124 | |
125 | | 1 // last line shown in multispan header
... |
213 | |
214 | | ),
| |_________- this is found to be of type `{integer}`
215 | false => "
| __________________^
216 | |
217 | |
218 | | 1 last line shown in multispan
... |
237 | |
238 | | ",
| |_________^ expected integer, found `&str`
```
2024-03-18 16:25:36 +00:00
Esteban Küber
8ea7177af7
Move multispan test to svg output
2024-03-18 16:25:36 +00:00
Esteban Küber
3e0bf9498a
Fix test for multiline span ui display
...
The compiler output changed in such a way that this test was no longer testing what it was meant to.
2024-03-18 16:25:36 +00:00
许杰友 Jieyou Xu (Joe)
ec2cc761bc
[AUTO-GENERATED] Migrate ui tests from //
to //@
directives
2024-02-16 20:02:50 +00:00
Nilstrieb
41e8d152dc
Show number in error message even for one error
...
Co-authored-by: Adrian <adrian.iosdev@gmail.com>
2023-11-24 19:15:52 +01:00
Michael Goulet
137b6d0b01
Point to where missing return type should go
2023-10-04 21:09:54 +00:00
Michael Goulet
3a3f4a2144
Don't use method span on clone suggestion
2023-07-10 20:09:28 +00:00
Michael Goulet
fe870424a7
Do not set up wrong span for adjustments
2023-07-10 20:09:26 +00:00
Eric Huss
a4e851cf62
Add some reasons why tests are ignored.
2023-04-15 16:11:42 -07:00
Albert Larsan
cf2dff2b1e
Move /src/test to /tests
2023-01-11 09:32:08 +00:00