]>
Commit | Line | Data |
---|---|---|
1a4d82fc JJ |
1 | // Copyright 2014 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. | |
4 | // | |
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. | |
10 | ||
11 | //! "compile-fail/svh-uta-trait.rs" is checking that we detect a | |
12 | //! change from `use foo::TraitB` to use `foo::TraitB` in the hash | |
13 | //! (SVH) computation (#14132), since that will affect method | |
14 | //! resolution. | |
15 | //! | |
16 | //! This is the upstream crate. | |
17 | ||
18 | #![crate_name = "uta"] | |
19 | ||
20 | mod traits { | |
c34b1796 AL |
21 | pub trait TraitA { fn val(&self) -> isize { 2 } } |
22 | pub trait TraitB { fn val(&self) -> isize { 3 } } | |
1a4d82fc JJ |
23 | } |
24 | ||
25 | impl traits::TraitA for () {} | |
26 | impl traits::TraitB for () {} | |
27 | ||
c34b1796 | 28 | pub fn foo<T>(_: isize) -> isize { |
1a4d82fc JJ |
29 | use traits::TraitA; |
30 | let v = (); | |
31 | v.val() | |
32 | } |