about summary refs log tree commit diff
path: root/tests/ui/array-slice-vec/vec-res-add.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/array-slice-vec/vec-res-add.rs')
-rw-r--r--tests/ui/array-slice-vec/vec-res-add.rs19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/ui/array-slice-vec/vec-res-add.rs b/tests/ui/array-slice-vec/vec-res-add.rs
new file mode 100644
index 00000000000..57b552ee558
--- /dev/null
+++ b/tests/ui/array-slice-vec/vec-res-add.rs
@@ -0,0 +1,19 @@
+#[derive(Debug)]
+struct R {
+  i:isize
+}
+
+fn r(i:isize) -> R { R { i: i } }
+
+impl Drop for R {
+    fn drop(&mut self) {}
+}
+
+fn main() {
+    // This can't make sense as it would copy the classes
+    let i = vec![r(0)];
+    let j = vec![r(1)];
+    let k = i + j;
+    //~^ ERROR cannot add `Vec<R>` to `Vec<R>`
+    println!("{:?}", j);
+}