summaryrefslogtreecommitdiffstats
path: root/tests/ui/binop/issue-28837.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/binop/issue-28837.rs')
-rw-r--r--tests/ui/binop/issue-28837.rs35
1 files changed, 35 insertions, 0 deletions
diff --git a/tests/ui/binop/issue-28837.rs b/tests/ui/binop/issue-28837.rs
new file mode 100644
index 000000000..9719c3afa
--- /dev/null
+++ b/tests/ui/binop/issue-28837.rs
@@ -0,0 +1,35 @@
+struct A;
+
+fn main() {
+ let a = A;
+
+ a + a; //~ ERROR cannot add `A` to `A`
+
+ a - a; //~ ERROR cannot subtract `A` from `A`
+
+ a * a; //~ ERROR cannot multiply `A` by `A`
+
+ a / a; //~ ERROR cannot divide `A` by `A`
+
+ a % a; //~ ERROR cannot mod `A` by `A`
+
+ a & a; //~ ERROR no implementation for `A & A`
+
+ a | a; //~ ERROR no implementation for `A | A`
+
+ a << a; //~ ERROR no implementation for `A << A`
+
+ a >> a; //~ ERROR no implementation for `A >> A`
+
+ a == a; //~ ERROR binary operation `==` cannot be applied to type `A`
+
+ a != a; //~ ERROR binary operation `!=` cannot be applied to type `A`
+
+ a < a; //~ ERROR binary operation `<` cannot be applied to type `A`
+
+ a <= a; //~ ERROR binary operation `<=` cannot be applied to type `A`
+
+ a > a; //~ ERROR binary operation `>` cannot be applied to type `A`
+
+ a >= a; //~ ERROR binary operation `>=` cannot be applied to type `A`
+}