diff --git a/src/test/compile-fail/issue-2951.rs b/src/test/compile-fail/issue-2951.rs new file mode 100644 index 000000000000..b759aa2f3e3d --- /dev/null +++ b/src/test/compile-fail/issue-2951.rs @@ -0,0 +1,9 @@ +// xfail-test +fn foo(x: T, y: U) { + let mut xx = x; + xx = y; // error message should mention T and U, not 'a and 'b +} + +fn main() { + +} \ No newline at end of file diff --git a/src/test/compile-fail/issue-2969.rs b/src/test/compile-fail/issue-2969.rs new file mode 100644 index 000000000000..d581e3180366 --- /dev/null +++ b/src/test/compile-fail/issue-2969.rs @@ -0,0 +1,9 @@ +// xfail-test +fn main() +{ +// See #2969 -- error message should be improved + let mut x = [mut 1, 2, 4]; + let v : &int = &x[2]; + x[2] = 6; + assert *v == 6; +} diff --git a/src/test/compile-fail/issue-3080.rs b/src/test/compile-fail/issue-3080.rs new file mode 100644 index 000000000000..b4bf2a0acd94 --- /dev/null +++ b/src/test/compile-fail/issue-3080.rs @@ -0,0 +1,9 @@ +// xfail-test +enum x = (); +impl x { + unsafe fn with() { } // This should fail +} + +fn main() { + x(()).with(); +} diff --git a/src/test/run-pass/issue-3154.rs b/src/test/run-pass/issue-3154.rs new file mode 100644 index 000000000000..bc899b601873 --- /dev/null +++ b/src/test/run-pass/issue-3154.rs @@ -0,0 +1,11 @@ +struct thing { + x: &Q +} + +fn thing(x: &Q) -> thing { + thing{ x: x } +} + +fn main() { + thing(&()); +} \ No newline at end of file