Fix format string grammar in docs and improve alignment error message
This commit is contained in:
parent
269d5b56bc
commit
fdbaaac245
4 changed files with 19 additions and 9 deletions
|
|
@ -858,7 +858,9 @@ impl<'input> Parser<'input> {
|
|||
self.errors.insert(
|
||||
0,
|
||||
ParseError {
|
||||
description: "expected format parameter to occur after `:`".to_owned(),
|
||||
description:
|
||||
"expected alignment specifier after `:` in format string; example: `{:>?}`"
|
||||
.to_owned(),
|
||||
note: None,
|
||||
label: format!("expected `{}` to occur after `:`", alignment),
|
||||
span: range,
|
||||
|
|
|
|||
|
|
@ -354,7 +354,7 @@
|
|||
//! sign := '+' | '-'
|
||||
//! width := count
|
||||
//! precision := count | '*'
|
||||
//! type := '?' | 'x?' | 'X?' | identifier
|
||||
//! type := '?' | 'x?' | 'X?' | 'o' | 'x' | 'X' | 'p' | 'b' | 'e' | 'E'
|
||||
//! count := parameter | integer
|
||||
//! parameter := argument '$'
|
||||
//! ```
|
||||
|
|
|
|||
|
|
@ -13,9 +13,11 @@ fn main() {
|
|||
format!("{?:#?}", bar);
|
||||
//~^ ERROR invalid format string: expected format parameter to occur after `:`
|
||||
format!("Hello {<5:}!", "x");
|
||||
//~^ ERROR invalid format string: expected format parameter to occur after `:`
|
||||
//~^ ERROR invalid format string: expected alignment specifier after `:` in format string; example: `{:>?}`
|
||||
format!("Hello {^5:}!", "x");
|
||||
//~^ ERROR invalid format string: expected format parameter to occur after `:`
|
||||
//~^ ERROR invalid format string: expected alignment specifier after `:` in format string; example: `{:>?}`
|
||||
format!("Hello {>5:}!", "x");
|
||||
//~^ ERROR invalid format string: expected format parameter to occur after `:`
|
||||
//~^ ERROR invalid format string: expected alignment specifier after `:` in format string; example: `{:>?}`
|
||||
println!("{0:#X>18}", 12345);
|
||||
//~^ ERROR invalid format string: expected alignment specifier after `:` in format string; example: `{:>?}`
|
||||
}
|
||||
|
|
|
|||
|
|
@ -50,23 +50,29 @@ LL | format!("{?:#?}", bar);
|
|||
|
|
||||
= note: `?` comes after `:`, try `:?` instead
|
||||
|
||||
error: invalid format string: expected format parameter to occur after `:`
|
||||
error: invalid format string: expected alignment specifier after `:` in format string; example: `{:>?}`
|
||||
--> $DIR/format-string-wrong-order.rs:15:21
|
||||
|
|
||||
LL | format!("Hello {<5:}!", "x");
|
||||
| ^ expected `<` to occur after `:` in format string
|
||||
|
||||
error: invalid format string: expected format parameter to occur after `:`
|
||||
error: invalid format string: expected alignment specifier after `:` in format string; example: `{:>?}`
|
||||
--> $DIR/format-string-wrong-order.rs:17:21
|
||||
|
|
||||
LL | format!("Hello {^5:}!", "x");
|
||||
| ^ expected `^` to occur after `:` in format string
|
||||
|
||||
error: invalid format string: expected format parameter to occur after `:`
|
||||
error: invalid format string: expected alignment specifier after `:` in format string; example: `{:>?}`
|
||||
--> $DIR/format-string-wrong-order.rs:19:21
|
||||
|
|
||||
LL | format!("Hello {>5:}!", "x");
|
||||
| ^ expected `>` to occur after `:` in format string
|
||||
|
||||
error: aborting due to 9 previous errors
|
||||
error: invalid format string: expected alignment specifier after `:` in format string; example: `{:>?}`
|
||||
--> $DIR/format-string-wrong-order.rs:21:20
|
||||
|
|
||||
LL | println!("{0:#X>18}", 12345);
|
||||
| ^ expected `>` to occur after `:` in format string
|
||||
|
||||
error: aborting due to 10 previous errors
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue