Rust: Follow-up changes after rebase

This commit is contained in:
Tom Hvitved
2025-05-22 10:13:07 +02:00
committed by Arthur Baars
parent 28be2086ad
commit 76737cb53a
3 changed files with 20 additions and 4 deletions

View File

@@ -5,6 +5,8 @@
* @id rust/diagnostics/path-resolution-consistency
*/
private import rust
private import codeql.rust.internal.PathResolution
private import codeql.rust.internal.PathResolutionConsistency as PathResolutionConsistency
private import codeql.rust.elements.Locatable
private import codeql.Locations
@@ -25,3 +27,7 @@ query predicate multipleMethodCallTargets(SourceLocatable a, SourceLocatable b)
query predicate multiplePathResolutions(SourceLocatable a, SourceLocatable b) {
PathResolutionConsistency::multiplePathResolutions(a, b)
}
query predicate multipleCanonicalPaths(SourceLocatable i, SourceLocatable c, string path) {
PathResolutionConsistency::multipleCanonicalPaths(i, c, path)
}

View File

@@ -354,10 +354,7 @@ class CrateItemNode extends ItemNode instanceof Crate {
this.hasCanonicalPath(c) and
exists(ModuleLikeNode m |
child.getImmediateParent() = m and
not m = child.(SourceFileItemNode).getSuper()
|
m = super.getModule() // the special `crate` root module inserted by the extractor
or
not m = child.(SourceFileItemNode).getSuper() and
m = super.getSourceFile()
)
}

View File

@@ -1,3 +1,16 @@
multipleMethodCallTargets
| web_frameworks.rs:194:30:194:74 | ... .get(...) | file://:0:0:0:0 | fn get |
| web_frameworks.rs:194:30:194:74 | ... .get(...) | file://:0:0:0:0 | fn get |
multipleCanonicalPaths
| file://:0:0:0:0 | fn to_ordering | file://:0:0:0:0 | Crate(typenum@1.18.0) | <typenum::Equal as core::cmp::Ord>::to_ordering |
| file://:0:0:0:0 | fn to_ordering | file://:0:0:0:0 | Crate(typenum@1.18.0) | <typenum::Equal as typenum::marker_traits::Ord>::to_ordering |
| file://:0:0:0:0 | fn to_ordering | file://:0:0:0:0 | Crate(typenum@1.18.0) | <typenum::Greater as core::cmp::Ord>::to_ordering |
| file://:0:0:0:0 | fn to_ordering | file://:0:0:0:0 | Crate(typenum@1.18.0) | <typenum::Greater as typenum::marker_traits::Ord>::to_ordering |
| file://:0:0:0:0 | fn to_ordering | file://:0:0:0:0 | Crate(typenum@1.18.0) | <typenum::Less as core::cmp::Ord>::to_ordering |
| file://:0:0:0:0 | fn to_ordering | file://:0:0:0:0 | Crate(typenum@1.18.0) | <typenum::Less as typenum::marker_traits::Ord>::to_ordering |
| file://:0:0:0:0 | impl Ord for Equal { ... } | file://:0:0:0:0 | Crate(typenum@1.18.0) | <typenum::Equal as core::cmp::Ord> |
| file://:0:0:0:0 | impl Ord for Equal { ... } | file://:0:0:0:0 | Crate(typenum@1.18.0) | <typenum::Equal as typenum::marker_traits::Ord> |
| file://:0:0:0:0 | impl Ord for Greater { ... } | file://:0:0:0:0 | Crate(typenum@1.18.0) | <typenum::Greater as core::cmp::Ord> |
| file://:0:0:0:0 | impl Ord for Greater { ... } | file://:0:0:0:0 | Crate(typenum@1.18.0) | <typenum::Greater as typenum::marker_traits::Ord> |
| file://:0:0:0:0 | impl Ord for Less { ... } | file://:0:0:0:0 | Crate(typenum@1.18.0) | <typenum::Less as core::cmp::Ord> |
| file://:0:0:0:0 | impl Ord for Less { ... } | file://:0:0:0:0 | Crate(typenum@1.18.0) | <typenum::Less as typenum::marker_traits::Ord> |