summaryrefslogtreecommitdiffstats
path: root/tests/ui/parser/require-parens-for-chained-comparison.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/parser/require-parens-for-chained-comparison.rs')
-rw-r--r--tests/ui/parser/require-parens-for-chained-comparison.rs38
1 files changed, 38 insertions, 0 deletions
diff --git a/tests/ui/parser/require-parens-for-chained-comparison.rs b/tests/ui/parser/require-parens-for-chained-comparison.rs
new file mode 100644
index 000000000..5b90e905a
--- /dev/null
+++ b/tests/ui/parser/require-parens-for-chained-comparison.rs
@@ -0,0 +1,38 @@
+fn main() {
+ false == false == false;
+ //~^ ERROR comparison operators cannot be chained
+ //~| HELP split the comparison into two
+
+ false == 0 < 2;
+ //~^ ERROR comparison operators cannot be chained
+ //~| HELP parenthesize the comparison
+
+ f<X>();
+ //~^ ERROR comparison operators cannot be chained
+ //~| HELP use `::<...>` instead of `<...>` to specify lifetime, type, or const arguments
+
+ f<Result<Option<X>, Option<Option<X>>>(1, 2);
+ //~^ ERROR comparison operators cannot be chained
+ //~| HELP use `::<...>` instead of `<...>` to specify lifetime, type, or const arguments
+
+ let _ = f<u8, i8>();
+ //~^ ERROR expected one of
+ //~| HELP use `::<...>` instead of `<...>` to specify lifetime, type, or const arguments
+
+ let _ = f<'_, i8>();
+ //~^ ERROR expected one of
+ //~| HELP use `::<...>` instead of `<...>` to specify lifetime, type, or const arguments
+ //~| ERROR expected
+ //~| HELP add `'` to close the char literal
+
+ f<'_>();
+ //~^ comparison operators cannot be chained
+ //~| HELP use `::<...>` instead of `<...>` to specify lifetime, type, or const arguments
+ //~| ERROR expected
+ //~| HELP add `'` to close the char literal
+
+ let _ = f<u8>;
+ //~^ ERROR comparison operators cannot be chained
+ //~| HELP use `::<...>` instead of `<...>` to specify lifetime, type, or const arguments
+ //~| HELP or use `(...)` if you meant to specify fn arguments
+}