| //@ run-pass | |
| // Test method calls with self as an argument (cross-crate) | |
| //@ aux-build:method_self_arg2.rs | |
| extern crate method_self_arg2; | |
| use method_self_arg2::{Foo, Bar}; | |
| fn main() { | |
| let x = Foo; | |
| // Test external call. | |
| Bar::foo1(&x); | |
| Bar::foo2(x); | |
| Bar::foo3(Box::new(x)); | |
| Bar::bar1(&x); | |
| Bar::bar2(x); | |
| Bar::bar3(Box::new(x)); | |
| x.run_trait(); | |
| assert_eq!(method_self_arg2::get_count(), 2*2*3*3*5*5*7*7*11*11*13*13*17); | |
| } |