1 // Copyright 2012 The Rust Project Developers. See the COPYRIGHT
2 // file at the top-level directory of this distribution and at
3 // http://rust-lang.org/COPYRIGHT.
5 // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6 // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8 // option. This file may not be copied, modified, or distributed
9 // except according to those terms.
11 #![feature(box_syntax)]
18 fn foo(self: isize, x: isize) -> isize { //~ ERROR mismatched types
28 fn foo(self: Bar<isize>, x: isize) -> isize { //~ ERROR mismatched types
31 fn bar(self: &Bar<usize>, x: isize) -> isize { //~ ERROR mismatched types
42 impl<'a, T> SomeTrait for &'a Bar<T> {
43 fn dummy1(self: &&'a Bar<T>) { }
44 fn dummy2(self: &Bar<T>) {} //~ ERROR mismatched types
45 //~^ ERROR mismatched types
46 fn dummy3(self: &&Bar<T>) {}
47 //~^ ERROR mismatched types
48 //~| expected type `&&'a Bar<T>`
49 //~| found type `&&Bar<T>`
50 //~| lifetime mismatch
51 //~| ERROR mismatched types
52 //~| expected type `&&'a Bar<T>`
53 //~| found type `&&Bar<T>`
54 //~| lifetime mismatch
61 println!("{}", foo.foo(2));
65 println!("{} {}", bar.foo(2), bar.bar(2));