Skip to content

Commit 3104adb

Browse files
committed
Rust: Add type inference test
1 parent 802c465 commit 3104adb

File tree

3 files changed

+6553
-6514
lines changed

3 files changed

+6553
-6514
lines changed

rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -13,23 +13,25 @@ multipleResolvedTargets
1313
| dyn_type.rs:90:10:90:13 | * ... |
1414
| invalid/main.rs:69:13:69:17 | * ... |
1515
| invalid/main.rs:76:13:76:17 | * ... |
16-
| main.rs:1077:14:1077:18 | * ... |
17-
| main.rs:1159:26:1159:30 | * ... |
18-
| main.rs:1503:14:1503:21 | * ... |
19-
| main.rs:1503:16:1503:20 | * ... |
20-
| main.rs:1508:14:1508:18 | * ... |
21-
| main.rs:1539:27:1539:29 | * ... |
22-
| main.rs:1653:17:1653:24 | * ... |
23-
| main.rs:1653:18:1653:24 | * ... |
24-
| main.rs:1791:17:1791:21 | * ... |
25-
| main.rs:1806:28:1806:32 | * ... |
26-
| main.rs:2439:13:2439:18 | * ... |
27-
| main.rs:2633:13:2633:31 | ...::from(...) |
28-
| main.rs:2634:13:2634:31 | ...::from(...) |
29-
| main.rs:2635:13:2635:31 | ...::from(...) |
30-
| main.rs:2641:13:2641:31 | ...::from(...) |
31-
| main.rs:2642:13:2642:31 | ...::from(...) |
32-
| main.rs:2643:13:2643:31 | ...::from(...) |
33-
| main.rs:3072:13:3072:17 | x.f() |
16+
| main.rs:841:9:841:14 | x.m2() |
17+
| main.rs:842:9:842:14 | y.m2() |
18+
| main.rs:1092:14:1092:18 | * ... |
19+
| main.rs:1174:26:1174:30 | * ... |
20+
| main.rs:1518:14:1518:21 | * ... |
21+
| main.rs:1518:16:1518:20 | * ... |
22+
| main.rs:1523:14:1523:18 | * ... |
23+
| main.rs:1554:27:1554:29 | * ... |
24+
| main.rs:1668:17:1668:24 | * ... |
25+
| main.rs:1668:18:1668:24 | * ... |
26+
| main.rs:1806:17:1806:21 | * ... |
27+
| main.rs:1821:28:1821:32 | * ... |
28+
| main.rs:2454:13:2454:18 | * ... |
29+
| main.rs:2648:13:2648:31 | ...::from(...) |
30+
| main.rs:2649:13:2649:31 | ...::from(...) |
31+
| main.rs:2650:13:2650:31 | ...::from(...) |
32+
| main.rs:2656:13:2656:31 | ...::from(...) |
33+
| main.rs:2657:13:2657:31 | ...::from(...) |
34+
| main.rs:2658:13:2658:31 | ...::from(...) |
35+
| main.rs:3087:13:3087:17 | x.f() |
3436
| pattern_matching.rs:273:13:273:27 | * ... |
3537
| pattern_matching.rs:273:14:273:27 | * ... |

rust/ql/test/library-tests/type-inference/main.rs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -827,6 +827,21 @@ mod function_trait_bounds {
827827
}
828828
}
829829

830+
trait MyTrait2 {
831+
// MyTrait2::m2
832+
fn m2(self);
833+
}
834+
835+
trait MyTrait3 {
836+
// MyTrait3::m2
837+
fn m2(&self);
838+
}
839+
840+
fn bound_overlap<T: MyTrait2 + MyTrait3>(x: T, y: &T) {
841+
x.m2(); // $ target=MyTrait2::m2 $ SPURIOUS: target=MyTrait3::m2
842+
y.m2(); // $ target=MyTrait3::m2 $ SPURIOUS: target=MyTrait2::m2
843+
}
844+
830845
pub fn f() {
831846
let x = MyThing { a: S1 };
832847
let y = MyThing { a: S2 };

0 commit comments

Comments
 (0)