diff options
| author | 5225225 <5225225@mailbox.org> | 2021-11-13 11:14:17 +0000 |
|---|---|---|
| committer | 5225225 <5225225@mailbox.org> | 2021-11-16 08:06:30 +0000 |
| commit | de05d3ec31f22b1f3afaf8b5ceddf224492c4aaa (patch) | |
| tree | 00820f35879413e641462e8340e7617d5fd1fadd /src/test/ui/parser | |
| parent | 02063124f96aac10f8c5c70653242b0704d397e0 (diff) | |
| download | rust-de05d3ec31f22b1f3afaf8b5ceddf224492c4aaa.tar.gz rust-de05d3ec31f22b1f3afaf8b5ceddf224492c4aaa.zip | |
Print full char literal on error if any are non-printing
Diffstat (limited to 'src/test/ui/parser')
| -rw-r--r-- | src/test/ui/parser/char/whitespace-character-literal.rs | 9 | ||||
| -rw-r--r-- | src/test/ui/parser/char/whitespace-character-literal.stderr | 18 |
2 files changed, 27 insertions, 0 deletions
diff --git a/src/test/ui/parser/char/whitespace-character-literal.rs b/src/test/ui/parser/char/whitespace-character-literal.rs new file mode 100644 index 00000000000..ecb5c3cf49e --- /dev/null +++ b/src/test/ui/parser/char/whitespace-character-literal.rs @@ -0,0 +1,9 @@ +// This tests that the error generated when a character literal has multiple +// characters in it contains a note about non-printing characters. + +fn main() { + // <hair space>x<zero width space> + let _hair_space_around = ' x'; + //~^ ERROR: character literal may only contain one codepoint + //~| NOTE: there are non-printing characters, the full sequence is `\u{200a}x\u{200b}` +} diff --git a/src/test/ui/parser/char/whitespace-character-literal.stderr b/src/test/ui/parser/char/whitespace-character-literal.stderr new file mode 100644 index 00000000000..a12088ce77d --- /dev/null +++ b/src/test/ui/parser/char/whitespace-character-literal.stderr @@ -0,0 +1,18 @@ +error: character literal may only contain one codepoint + --> $DIR/whitespace-character-literal.rs:6:30 + | +LL | let _hair_space_around = ' x'; + | ^^^^ + | +note: there are non-printing characters, the full sequence is `\u{200a}x\u{200b}` + --> $DIR/whitespace-character-literal.rs:6:31 + | +LL | let _hair_space_around = ' x'; + | ^^ +help: if you meant to write a `str` literal, use double quotes + | +LL | let _hair_space_around = " x"; + | ~~~~ + +error: aborting due to previous error + |
