mirror of
https://github.com/rust-lang/rust.git
synced 2024-12-01 19:23:50 +00:00
Tweak chained comparison errors.
Lower case and give a more precise span: from operator to operator, not just the last one.
This commit is contained in:
parent
2e888d0341
commit
ec790d6fcc
@ -2882,12 +2882,13 @@ impl<'a> Parser<'a> {
|
||||
debug_assert!(ast_util::is_comparison_binop(outer_op));
|
||||
match lhs.node {
|
||||
ExprBinary(op, _, _) if ast_util::is_comparison_binop(op.node) => {
|
||||
let op_span = self.span;
|
||||
// respan to include both operators
|
||||
let op_span = mk_sp(op.span.lo, self.span.hi);
|
||||
self.span_err(op_span,
|
||||
"Chained comparison operators require parentheses");
|
||||
"chained comparison operators require parentheses");
|
||||
if op.node == BiLt && outer_op == BiGt {
|
||||
self.span_help(op_span,
|
||||
"use ::< instead of < if you meant to specify type arguments");
|
||||
"use `::<...>` instead of `<...>` if you meant to specify type arguments");
|
||||
}
|
||||
}
|
||||
_ => {}
|
||||
|
@ -12,12 +12,12 @@ fn f<T>() {}
|
||||
|
||||
fn main() {
|
||||
false == false == false;
|
||||
//~^ ERROR: Chained comparison operators require parentheses
|
||||
//~^ ERROR: chained comparison operators require parentheses
|
||||
|
||||
false == 0 < 2;
|
||||
//~^ ERROR: Chained comparison operators require parentheses
|
||||
//~^ ERROR: chained comparison operators require parentheses
|
||||
|
||||
f<X>();
|
||||
//~^ ERROR: Chained comparison operators require parentheses
|
||||
//~^^ HELP: use ::< instead of < if you meant to specify type arguments
|
||||
//~^ ERROR: chained comparison operators require parentheses
|
||||
//~^^ HELP: use `::<...>` instead of `<...>`
|
||||
}
|
||||
|
@ -15,6 +15,6 @@ fn f<X>() {}
|
||||
pub fn main() {
|
||||
f<type>();
|
||||
//~^ ERROR expected identifier, found keyword `type`
|
||||
//~^^ ERROR: Chained comparison operators require parentheses
|
||||
//~^^^ HELP: use ::< instead of < if you meant to specify type arguments
|
||||
//~^^ ERROR: chained comparison
|
||||
//~^^^ HELP: use `::<
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user