mirror of
https://github.com/github/codeql.git
synced 2026-02-12 05:01:06 +01:00
Rust: Test unpacking the Wrapping number.
This commit is contained in:
@@ -52,3 +52,4 @@
|
||||
| main.rs:197:9:197:9 | [post] a [implicit borrow] | main.rs:197:9:197:9 | [post] a |
|
||||
| main.rs:198:9:198:9 | [post] a [implicit borrow] | main.rs:198:9:198:9 | [SSA] a |
|
||||
| main.rs:199:9:199:9 | [post] a [implicit borrow] | main.rs:199:9:199:9 | [SSA] a |
|
||||
| main.rs:201:21:201:21 | a | main.rs:201:21:201:23 | a.0 |
|
||||
|
||||
@@ -192,12 +192,13 @@ mod wrapping {
|
||||
}
|
||||
|
||||
pub fn wrapping() {
|
||||
let mut a: Wrapping<i64> = Wrapping(1);
|
||||
let mut a: Wrapping<i64> = Wrapping(crate::source(1));
|
||||
a.add_assign(source(2));
|
||||
a.add_assign(Wrapping(crate::source(3)));
|
||||
a += source(4);
|
||||
a += std::num::Wrapping(crate::source(5));
|
||||
sink(a); // $ hasTaintFlow=2 hasTaintFlow=4 MISSING: hasTaintFlow=3 hasTaintFlow=5 --- we don't currently find any `Call`s for `Wrapping` above
|
||||
sink(a); // $ hasTaintFlow=2 hasTaintFlow=4 MISSING: hasTaintFlow=1 hasTaintFlow=3 hasTaintFlow=5
|
||||
crate::sink(a.0); // $ MISSING: hasTaintFlow=1 hasTaintFlow=2 hasTaintFlow=3 hasTaintFlow=4 hasTaintFlow=5
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user