mirror of
https://github.com/github/codeql.git
synced 2026-04-26 17:25:19 +02:00
Rust: Add tests for parameter in source model
This commit is contained in:
@@ -249,6 +249,33 @@ fn test_enum_method_source() {
|
||||
}
|
||||
}
|
||||
|
||||
mod source_into_function {
|
||||
use super::sink;
|
||||
|
||||
// has a source model
|
||||
fn pass_source<A>(_i: i64, f: impl FnOnce(i64) -> A) -> A {
|
||||
f(42)
|
||||
}
|
||||
|
||||
fn test_source_into_function() {
|
||||
let a = |a| sink(a); // $ MISSING: hasValueFlow=1
|
||||
pass_source(1, a);
|
||||
|
||||
pass_source(2, |a| {
|
||||
sink(a); // $ MISSING: hasValueFlow=2
|
||||
});
|
||||
|
||||
fn f(a: i64) {
|
||||
sink(a) // $ MISSING: hasValueFlow=3
|
||||
}
|
||||
pass_source(3, f);
|
||||
|
||||
pass_source(4, async move |a| {
|
||||
sink(a); // $ MISSING: hasValueFlow=4
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// has a sink model
|
||||
fn enum_sink(e: MyFieldEnum) {}
|
||||
|
||||
|
||||
@@ -230,70 +230,70 @@ edges
|
||||
| main.rs:247:9:247:37 | ...::C {...} [C] | main.rs:247:35:247:35 | i | provenance | |
|
||||
| main.rs:247:35:247:35 | i | main.rs:247:47:247:47 | i | provenance | |
|
||||
| main.rs:247:35:247:35 | i | main.rs:247:47:247:47 | i | provenance | |
|
||||
| main.rs:256:9:256:9 | s | main.rs:257:41:257:41 | s | provenance | |
|
||||
| main.rs:256:9:256:9 | s | main.rs:257:41:257:41 | s | provenance | |
|
||||
| main.rs:256:13:256:22 | source(...) | main.rs:256:9:256:9 | s | provenance | |
|
||||
| main.rs:256:13:256:22 | source(...) | main.rs:256:9:256:9 | s | provenance | |
|
||||
| main.rs:257:15:257:43 | ...::C {...} [C] | main.rs:257:5:257:13 | enum_sink | provenance | MaD:2 Sink:MaD:2 |
|
||||
| main.rs:257:15:257:43 | ...::C {...} [C] | main.rs:257:5:257:13 | enum_sink | provenance | MaD:2 Sink:MaD:2 |
|
||||
| main.rs:257:41:257:41 | s | main.rs:257:15:257:43 | ...::C {...} [C] | provenance | |
|
||||
| main.rs:257:41:257:41 | s | main.rs:257:15:257:43 | ...::C {...} [C] | provenance | |
|
||||
| main.rs:262:9:262:9 | s | main.rs:263:39:263:39 | s | provenance | |
|
||||
| main.rs:262:9:262:9 | s | main.rs:263:39:263:39 | s | provenance | |
|
||||
| main.rs:262:13:262:22 | source(...) | main.rs:262:9:262:9 | s | provenance | |
|
||||
| main.rs:262:13:262:22 | source(...) | main.rs:262:9:262:9 | s | provenance | |
|
||||
| main.rs:263:9:263:9 | e [D] | main.rs:264:5:264:5 | e [D] | provenance | |
|
||||
| main.rs:263:9:263:9 | e [D] | main.rs:264:5:264:5 | e [D] | provenance | |
|
||||
| main.rs:263:13:263:41 | ...::D {...} [D] | main.rs:263:9:263:9 | e [D] | provenance | |
|
||||
| main.rs:263:13:263:41 | ...::D {...} [D] | main.rs:263:9:263:9 | e [D] | provenance | |
|
||||
| main.rs:263:39:263:39 | s | main.rs:263:13:263:41 | ...::D {...} [D] | provenance | |
|
||||
| main.rs:263:39:263:39 | s | main.rs:263:13:263:41 | ...::D {...} [D] | provenance | |
|
||||
| main.rs:264:5:264:5 | e [D] | main.rs:264:7:264:10 | sink | provenance | MaD:1 Sink:MaD:1 |
|
||||
| main.rs:264:5:264:5 | e [D] | main.rs:264:7:264:10 | sink | provenance | MaD:1 Sink:MaD:1 |
|
||||
| main.rs:273:9:273:9 | s | main.rs:274:10:274:10 | s | provenance | |
|
||||
| main.rs:273:9:273:9 | s | main.rs:274:10:274:10 | s | provenance | |
|
||||
| main.rs:273:13:273:25 | simple_source | main.rs:273:13:273:29 | simple_source(...) | provenance | Src:MaD:7 MaD:7 |
|
||||
| main.rs:273:13:273:25 | simple_source | main.rs:273:13:273:29 | simple_source(...) | provenance | Src:MaD:7 MaD:7 |
|
||||
| main.rs:273:13:273:29 | simple_source(...) | main.rs:273:9:273:9 | s | provenance | |
|
||||
| main.rs:273:13:273:29 | simple_source(...) | main.rs:273:9:273:9 | s | provenance | |
|
||||
| main.rs:281:9:281:9 | s | main.rs:282:17:282:17 | s | provenance | |
|
||||
| main.rs:281:9:281:9 | s | main.rs:282:17:282:17 | s | provenance | |
|
||||
| main.rs:281:13:281:22 | source(...) | main.rs:281:9:281:9 | s | provenance | |
|
||||
| main.rs:281:13:281:22 | source(...) | main.rs:281:9:281:9 | s | provenance | |
|
||||
| main.rs:282:17:282:17 | s | main.rs:282:5:282:15 | simple_sink | provenance | MaD:3 Sink:MaD:3 |
|
||||
| main.rs:282:17:282:17 | s | main.rs:282:5:282:15 | simple_sink | provenance | MaD:3 Sink:MaD:3 |
|
||||
| main.rs:290:5:290:14 | arg_source | main.rs:290:16:290:16 | [post] i | provenance | Src:MaD:5 MaD:5 |
|
||||
| main.rs:290:5:290:14 | arg_source | main.rs:290:16:290:16 | [post] i | provenance | Src:MaD:5 MaD:5 |
|
||||
| main.rs:290:16:290:16 | [post] i | main.rs:291:10:291:10 | i | provenance | |
|
||||
| main.rs:290:16:290:16 | [post] i | main.rs:291:10:291:10 | i | provenance | |
|
||||
| main.rs:343:9:343:10 | x1 | main.rs:344:10:344:11 | x1 | provenance | |
|
||||
| main.rs:343:9:343:10 | x1 | main.rs:344:10:344:11 | x1 | provenance | |
|
||||
| main.rs:343:14:343:23 | source(...) | main.rs:343:14:343:30 | ... .max(...) | provenance | MaD:8 |
|
||||
| main.rs:343:14:343:23 | source(...) | main.rs:343:14:343:30 | ... .max(...) | provenance | MaD:8 |
|
||||
| main.rs:343:14:343:30 | ... .max(...) | main.rs:343:9:343:10 | x1 | provenance | |
|
||||
| main.rs:343:14:343:30 | ... .max(...) | main.rs:343:9:343:10 | x1 | provenance | |
|
||||
| main.rs:346:9:346:10 | x2 [MyStruct.field1] | main.rs:354:10:354:11 | x2 [MyStruct.field1] | provenance | |
|
||||
| main.rs:346:9:346:10 | x2 [MyStruct.field1] | main.rs:354:10:354:11 | x2 [MyStruct.field1] | provenance | |
|
||||
| main.rs:346:14:353:6 | ... .max(...) [MyStruct.field1] | main.rs:346:9:346:10 | x2 [MyStruct.field1] | provenance | |
|
||||
| main.rs:346:14:353:6 | ... .max(...) [MyStruct.field1] | main.rs:346:9:346:10 | x2 [MyStruct.field1] | provenance | |
|
||||
| main.rs:346:15:349:5 | MyStruct {...} [MyStruct.field1] | main.rs:346:14:353:6 | ... .max(...) [MyStruct.field1] | provenance | MaD:8 |
|
||||
| main.rs:346:15:349:5 | MyStruct {...} [MyStruct.field1] | main.rs:346:14:353:6 | ... .max(...) [MyStruct.field1] | provenance | MaD:8 |
|
||||
| main.rs:347:17:347:26 | source(...) | main.rs:346:15:349:5 | MyStruct {...} [MyStruct.field1] | provenance | |
|
||||
| main.rs:347:17:347:26 | source(...) | main.rs:346:15:349:5 | MyStruct {...} [MyStruct.field1] | provenance | |
|
||||
| main.rs:354:10:354:11 | x2 [MyStruct.field1] | main.rs:354:10:354:18 | x2.field1 | provenance | |
|
||||
| main.rs:354:10:354:11 | x2 [MyStruct.field1] | main.rs:354:10:354:18 | x2.field1 | provenance | |
|
||||
| main.rs:359:9:359:10 | x4 | main.rs:360:10:360:11 | x4 | provenance | |
|
||||
| main.rs:359:9:359:10 | x4 | main.rs:360:10:360:11 | x4 | provenance | |
|
||||
| main.rs:359:14:359:23 | source(...) | main.rs:359:14:359:30 | ... .max(...) | provenance | MaD:8 |
|
||||
| main.rs:359:14:359:23 | source(...) | main.rs:359:14:359:30 | ... .max(...) | provenance | MaD:8 |
|
||||
| main.rs:359:14:359:30 | ... .max(...) | main.rs:359:9:359:10 | x4 | provenance | |
|
||||
| main.rs:359:14:359:30 | ... .max(...) | main.rs:359:9:359:10 | x4 | provenance | |
|
||||
| main.rs:362:9:362:10 | x5 | main.rs:363:10:363:11 | x5 | provenance | |
|
||||
| main.rs:362:14:362:23 | source(...) | main.rs:362:14:362:30 | ... .lt(...) | provenance | MaD:9 |
|
||||
| main.rs:362:14:362:30 | ... .lt(...) | main.rs:362:9:362:10 | x5 | provenance | |
|
||||
| main.rs:365:9:365:10 | x6 | main.rs:366:10:366:11 | x6 | provenance | |
|
||||
| main.rs:365:14:365:23 | source(...) | main.rs:365:14:365:27 | ... < ... | provenance | MaD:9 |
|
||||
| main.rs:365:14:365:27 | ... < ... | main.rs:365:9:365:10 | x6 | provenance | |
|
||||
| main.rs:283:9:283:9 | s | main.rs:284:41:284:41 | s | provenance | |
|
||||
| main.rs:283:9:283:9 | s | main.rs:284:41:284:41 | s | provenance | |
|
||||
| main.rs:283:13:283:22 | source(...) | main.rs:283:9:283:9 | s | provenance | |
|
||||
| main.rs:283:13:283:22 | source(...) | main.rs:283:9:283:9 | s | provenance | |
|
||||
| main.rs:284:15:284:43 | ...::C {...} [C] | main.rs:284:5:284:13 | enum_sink | provenance | MaD:2 Sink:MaD:2 |
|
||||
| main.rs:284:15:284:43 | ...::C {...} [C] | main.rs:284:5:284:13 | enum_sink | provenance | MaD:2 Sink:MaD:2 |
|
||||
| main.rs:284:41:284:41 | s | main.rs:284:15:284:43 | ...::C {...} [C] | provenance | |
|
||||
| main.rs:284:41:284:41 | s | main.rs:284:15:284:43 | ...::C {...} [C] | provenance | |
|
||||
| main.rs:289:9:289:9 | s | main.rs:290:39:290:39 | s | provenance | |
|
||||
| main.rs:289:9:289:9 | s | main.rs:290:39:290:39 | s | provenance | |
|
||||
| main.rs:289:13:289:22 | source(...) | main.rs:289:9:289:9 | s | provenance | |
|
||||
| main.rs:289:13:289:22 | source(...) | main.rs:289:9:289:9 | s | provenance | |
|
||||
| main.rs:290:9:290:9 | e [D] | main.rs:291:5:291:5 | e [D] | provenance | |
|
||||
| main.rs:290:9:290:9 | e [D] | main.rs:291:5:291:5 | e [D] | provenance | |
|
||||
| main.rs:290:13:290:41 | ...::D {...} [D] | main.rs:290:9:290:9 | e [D] | provenance | |
|
||||
| main.rs:290:13:290:41 | ...::D {...} [D] | main.rs:290:9:290:9 | e [D] | provenance | |
|
||||
| main.rs:290:39:290:39 | s | main.rs:290:13:290:41 | ...::D {...} [D] | provenance | |
|
||||
| main.rs:290:39:290:39 | s | main.rs:290:13:290:41 | ...::D {...} [D] | provenance | |
|
||||
| main.rs:291:5:291:5 | e [D] | main.rs:291:7:291:10 | sink | provenance | MaD:1 Sink:MaD:1 |
|
||||
| main.rs:291:5:291:5 | e [D] | main.rs:291:7:291:10 | sink | provenance | MaD:1 Sink:MaD:1 |
|
||||
| main.rs:300:9:300:9 | s | main.rs:301:10:301:10 | s | provenance | |
|
||||
| main.rs:300:9:300:9 | s | main.rs:301:10:301:10 | s | provenance | |
|
||||
| main.rs:300:13:300:25 | simple_source | main.rs:300:13:300:29 | simple_source(...) | provenance | Src:MaD:7 MaD:7 |
|
||||
| main.rs:300:13:300:25 | simple_source | main.rs:300:13:300:29 | simple_source(...) | provenance | Src:MaD:7 MaD:7 |
|
||||
| main.rs:300:13:300:29 | simple_source(...) | main.rs:300:9:300:9 | s | provenance | |
|
||||
| main.rs:300:13:300:29 | simple_source(...) | main.rs:300:9:300:9 | s | provenance | |
|
||||
| main.rs:308:9:308:9 | s | main.rs:309:17:309:17 | s | provenance | |
|
||||
| main.rs:308:9:308:9 | s | main.rs:309:17:309:17 | s | provenance | |
|
||||
| main.rs:308:13:308:22 | source(...) | main.rs:308:9:308:9 | s | provenance | |
|
||||
| main.rs:308:13:308:22 | source(...) | main.rs:308:9:308:9 | s | provenance | |
|
||||
| main.rs:309:17:309:17 | s | main.rs:309:5:309:15 | simple_sink | provenance | MaD:3 Sink:MaD:3 |
|
||||
| main.rs:309:17:309:17 | s | main.rs:309:5:309:15 | simple_sink | provenance | MaD:3 Sink:MaD:3 |
|
||||
| main.rs:317:5:317:14 | arg_source | main.rs:317:16:317:16 | [post] i | provenance | Src:MaD:5 MaD:5 |
|
||||
| main.rs:317:5:317:14 | arg_source | main.rs:317:16:317:16 | [post] i | provenance | Src:MaD:5 MaD:5 |
|
||||
| main.rs:317:16:317:16 | [post] i | main.rs:318:10:318:10 | i | provenance | |
|
||||
| main.rs:317:16:317:16 | [post] i | main.rs:318:10:318:10 | i | provenance | |
|
||||
| main.rs:370:9:370:10 | x1 | main.rs:371:10:371:11 | x1 | provenance | |
|
||||
| main.rs:370:9:370:10 | x1 | main.rs:371:10:371:11 | x1 | provenance | |
|
||||
| main.rs:370:14:370:23 | source(...) | main.rs:370:14:370:30 | ... .max(...) | provenance | MaD:8 |
|
||||
| main.rs:370:14:370:23 | source(...) | main.rs:370:14:370:30 | ... .max(...) | provenance | MaD:8 |
|
||||
| main.rs:370:14:370:30 | ... .max(...) | main.rs:370:9:370:10 | x1 | provenance | |
|
||||
| main.rs:370:14:370:30 | ... .max(...) | main.rs:370:9:370:10 | x1 | provenance | |
|
||||
| main.rs:373:9:373:10 | x2 [MyStruct.field1] | main.rs:381:10:381:11 | x2 [MyStruct.field1] | provenance | |
|
||||
| main.rs:373:9:373:10 | x2 [MyStruct.field1] | main.rs:381:10:381:11 | x2 [MyStruct.field1] | provenance | |
|
||||
| main.rs:373:14:380:6 | ... .max(...) [MyStruct.field1] | main.rs:373:9:373:10 | x2 [MyStruct.field1] | provenance | |
|
||||
| main.rs:373:14:380:6 | ... .max(...) [MyStruct.field1] | main.rs:373:9:373:10 | x2 [MyStruct.field1] | provenance | |
|
||||
| main.rs:373:15:376:5 | MyStruct {...} [MyStruct.field1] | main.rs:373:14:380:6 | ... .max(...) [MyStruct.field1] | provenance | MaD:8 |
|
||||
| main.rs:373:15:376:5 | MyStruct {...} [MyStruct.field1] | main.rs:373:14:380:6 | ... .max(...) [MyStruct.field1] | provenance | MaD:8 |
|
||||
| main.rs:374:17:374:26 | source(...) | main.rs:373:15:376:5 | MyStruct {...} [MyStruct.field1] | provenance | |
|
||||
| main.rs:374:17:374:26 | source(...) | main.rs:373:15:376:5 | MyStruct {...} [MyStruct.field1] | provenance | |
|
||||
| main.rs:381:10:381:11 | x2 [MyStruct.field1] | main.rs:381:10:381:18 | x2.field1 | provenance | |
|
||||
| main.rs:381:10:381:11 | x2 [MyStruct.field1] | main.rs:381:10:381:18 | x2.field1 | provenance | |
|
||||
| main.rs:386:9:386:10 | x4 | main.rs:387:10:387:11 | x4 | provenance | |
|
||||
| main.rs:386:9:386:10 | x4 | main.rs:387:10:387:11 | x4 | provenance | |
|
||||
| main.rs:386:14:386:23 | source(...) | main.rs:386:14:386:30 | ... .max(...) | provenance | MaD:8 |
|
||||
| main.rs:386:14:386:23 | source(...) | main.rs:386:14:386:30 | ... .max(...) | provenance | MaD:8 |
|
||||
| main.rs:386:14:386:30 | ... .max(...) | main.rs:386:9:386:10 | x4 | provenance | |
|
||||
| main.rs:386:14:386:30 | ... .max(...) | main.rs:386:9:386:10 | x4 | provenance | |
|
||||
| main.rs:389:9:389:10 | x5 | main.rs:390:10:390:11 | x5 | provenance | |
|
||||
| main.rs:389:14:389:23 | source(...) | main.rs:389:14:389:30 | ... .lt(...) | provenance | MaD:9 |
|
||||
| main.rs:389:14:389:30 | ... .lt(...) | main.rs:389:9:389:10 | x5 | provenance | |
|
||||
| main.rs:392:9:392:10 | x6 | main.rs:393:10:393:11 | x6 | provenance | |
|
||||
| main.rs:392:14:392:23 | source(...) | main.rs:392:14:392:27 | ... < ... | provenance | MaD:9 |
|
||||
| main.rs:392:14:392:27 | ... < ... | main.rs:392:9:392:10 | x6 | provenance | |
|
||||
nodes
|
||||
| main.rs:15:9:15:9 | s | semmle.label | s |
|
||||
| main.rs:15:9:15:9 | s | semmle.label | s |
|
||||
@@ -533,88 +533,88 @@ nodes
|
||||
| main.rs:247:35:247:35 | i | semmle.label | i |
|
||||
| main.rs:247:47:247:47 | i | semmle.label | i |
|
||||
| main.rs:247:47:247:47 | i | semmle.label | i |
|
||||
| main.rs:256:9:256:9 | s | semmle.label | s |
|
||||
| main.rs:256:9:256:9 | s | semmle.label | s |
|
||||
| main.rs:256:13:256:22 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:256:13:256:22 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:257:5:257:13 | enum_sink | semmle.label | enum_sink |
|
||||
| main.rs:257:5:257:13 | enum_sink | semmle.label | enum_sink |
|
||||
| main.rs:257:15:257:43 | ...::C {...} [C] | semmle.label | ...::C {...} [C] |
|
||||
| main.rs:257:15:257:43 | ...::C {...} [C] | semmle.label | ...::C {...} [C] |
|
||||
| main.rs:257:41:257:41 | s | semmle.label | s |
|
||||
| main.rs:257:41:257:41 | s | semmle.label | s |
|
||||
| main.rs:262:9:262:9 | s | semmle.label | s |
|
||||
| main.rs:262:9:262:9 | s | semmle.label | s |
|
||||
| main.rs:262:13:262:22 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:262:13:262:22 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:263:9:263:9 | e [D] | semmle.label | e [D] |
|
||||
| main.rs:263:9:263:9 | e [D] | semmle.label | e [D] |
|
||||
| main.rs:263:13:263:41 | ...::D {...} [D] | semmle.label | ...::D {...} [D] |
|
||||
| main.rs:263:13:263:41 | ...::D {...} [D] | semmle.label | ...::D {...} [D] |
|
||||
| main.rs:263:39:263:39 | s | semmle.label | s |
|
||||
| main.rs:263:39:263:39 | s | semmle.label | s |
|
||||
| main.rs:264:5:264:5 | e [D] | semmle.label | e [D] |
|
||||
| main.rs:264:5:264:5 | e [D] | semmle.label | e [D] |
|
||||
| main.rs:264:7:264:10 | sink | semmle.label | sink |
|
||||
| main.rs:264:7:264:10 | sink | semmle.label | sink |
|
||||
| main.rs:273:9:273:9 | s | semmle.label | s |
|
||||
| main.rs:273:9:273:9 | s | semmle.label | s |
|
||||
| main.rs:273:13:273:25 | simple_source | semmle.label | simple_source |
|
||||
| main.rs:273:13:273:25 | simple_source | semmle.label | simple_source |
|
||||
| main.rs:273:13:273:29 | simple_source(...) | semmle.label | simple_source(...) |
|
||||
| main.rs:273:13:273:29 | simple_source(...) | semmle.label | simple_source(...) |
|
||||
| main.rs:274:10:274:10 | s | semmle.label | s |
|
||||
| main.rs:274:10:274:10 | s | semmle.label | s |
|
||||
| main.rs:281:9:281:9 | s | semmle.label | s |
|
||||
| main.rs:281:9:281:9 | s | semmle.label | s |
|
||||
| main.rs:281:13:281:22 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:281:13:281:22 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:282:5:282:15 | simple_sink | semmle.label | simple_sink |
|
||||
| main.rs:282:5:282:15 | simple_sink | semmle.label | simple_sink |
|
||||
| main.rs:282:17:282:17 | s | semmle.label | s |
|
||||
| main.rs:282:17:282:17 | s | semmle.label | s |
|
||||
| main.rs:290:5:290:14 | arg_source | semmle.label | arg_source |
|
||||
| main.rs:290:5:290:14 | arg_source | semmle.label | arg_source |
|
||||
| main.rs:290:16:290:16 | [post] i | semmle.label | [post] i |
|
||||
| main.rs:290:16:290:16 | [post] i | semmle.label | [post] i |
|
||||
| main.rs:291:10:291:10 | i | semmle.label | i |
|
||||
| main.rs:291:10:291:10 | i | semmle.label | i |
|
||||
| main.rs:343:9:343:10 | x1 | semmle.label | x1 |
|
||||
| main.rs:343:9:343:10 | x1 | semmle.label | x1 |
|
||||
| main.rs:343:14:343:23 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:343:14:343:23 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:343:14:343:30 | ... .max(...) | semmle.label | ... .max(...) |
|
||||
| main.rs:343:14:343:30 | ... .max(...) | semmle.label | ... .max(...) |
|
||||
| main.rs:344:10:344:11 | x1 | semmle.label | x1 |
|
||||
| main.rs:344:10:344:11 | x1 | semmle.label | x1 |
|
||||
| main.rs:346:9:346:10 | x2 [MyStruct.field1] | semmle.label | x2 [MyStruct.field1] |
|
||||
| main.rs:346:9:346:10 | x2 [MyStruct.field1] | semmle.label | x2 [MyStruct.field1] |
|
||||
| main.rs:346:14:353:6 | ... .max(...) [MyStruct.field1] | semmle.label | ... .max(...) [MyStruct.field1] |
|
||||
| main.rs:346:14:353:6 | ... .max(...) [MyStruct.field1] | semmle.label | ... .max(...) [MyStruct.field1] |
|
||||
| main.rs:346:15:349:5 | MyStruct {...} [MyStruct.field1] | semmle.label | MyStruct {...} [MyStruct.field1] |
|
||||
| main.rs:346:15:349:5 | MyStruct {...} [MyStruct.field1] | semmle.label | MyStruct {...} [MyStruct.field1] |
|
||||
| main.rs:347:17:347:26 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:347:17:347:26 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:354:10:354:11 | x2 [MyStruct.field1] | semmle.label | x2 [MyStruct.field1] |
|
||||
| main.rs:354:10:354:11 | x2 [MyStruct.field1] | semmle.label | x2 [MyStruct.field1] |
|
||||
| main.rs:354:10:354:18 | x2.field1 | semmle.label | x2.field1 |
|
||||
| main.rs:354:10:354:18 | x2.field1 | semmle.label | x2.field1 |
|
||||
| main.rs:359:9:359:10 | x4 | semmle.label | x4 |
|
||||
| main.rs:359:9:359:10 | x4 | semmle.label | x4 |
|
||||
| main.rs:359:14:359:23 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:359:14:359:23 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:359:14:359:30 | ... .max(...) | semmle.label | ... .max(...) |
|
||||
| main.rs:359:14:359:30 | ... .max(...) | semmle.label | ... .max(...) |
|
||||
| main.rs:360:10:360:11 | x4 | semmle.label | x4 |
|
||||
| main.rs:360:10:360:11 | x4 | semmle.label | x4 |
|
||||
| main.rs:362:9:362:10 | x5 | semmle.label | x5 |
|
||||
| main.rs:362:14:362:23 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:362:14:362:30 | ... .lt(...) | semmle.label | ... .lt(...) |
|
||||
| main.rs:363:10:363:11 | x5 | semmle.label | x5 |
|
||||
| main.rs:365:9:365:10 | x6 | semmle.label | x6 |
|
||||
| main.rs:365:14:365:23 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:365:14:365:27 | ... < ... | semmle.label | ... < ... |
|
||||
| main.rs:366:10:366:11 | x6 | semmle.label | x6 |
|
||||
| main.rs:283:9:283:9 | s | semmle.label | s |
|
||||
| main.rs:283:9:283:9 | s | semmle.label | s |
|
||||
| main.rs:283:13:283:22 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:283:13:283:22 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:284:5:284:13 | enum_sink | semmle.label | enum_sink |
|
||||
| main.rs:284:5:284:13 | enum_sink | semmle.label | enum_sink |
|
||||
| main.rs:284:15:284:43 | ...::C {...} [C] | semmle.label | ...::C {...} [C] |
|
||||
| main.rs:284:15:284:43 | ...::C {...} [C] | semmle.label | ...::C {...} [C] |
|
||||
| main.rs:284:41:284:41 | s | semmle.label | s |
|
||||
| main.rs:284:41:284:41 | s | semmle.label | s |
|
||||
| main.rs:289:9:289:9 | s | semmle.label | s |
|
||||
| main.rs:289:9:289:9 | s | semmle.label | s |
|
||||
| main.rs:289:13:289:22 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:289:13:289:22 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:290:9:290:9 | e [D] | semmle.label | e [D] |
|
||||
| main.rs:290:9:290:9 | e [D] | semmle.label | e [D] |
|
||||
| main.rs:290:13:290:41 | ...::D {...} [D] | semmle.label | ...::D {...} [D] |
|
||||
| main.rs:290:13:290:41 | ...::D {...} [D] | semmle.label | ...::D {...} [D] |
|
||||
| main.rs:290:39:290:39 | s | semmle.label | s |
|
||||
| main.rs:290:39:290:39 | s | semmle.label | s |
|
||||
| main.rs:291:5:291:5 | e [D] | semmle.label | e [D] |
|
||||
| main.rs:291:5:291:5 | e [D] | semmle.label | e [D] |
|
||||
| main.rs:291:7:291:10 | sink | semmle.label | sink |
|
||||
| main.rs:291:7:291:10 | sink | semmle.label | sink |
|
||||
| main.rs:300:9:300:9 | s | semmle.label | s |
|
||||
| main.rs:300:9:300:9 | s | semmle.label | s |
|
||||
| main.rs:300:13:300:25 | simple_source | semmle.label | simple_source |
|
||||
| main.rs:300:13:300:25 | simple_source | semmle.label | simple_source |
|
||||
| main.rs:300:13:300:29 | simple_source(...) | semmle.label | simple_source(...) |
|
||||
| main.rs:300:13:300:29 | simple_source(...) | semmle.label | simple_source(...) |
|
||||
| main.rs:301:10:301:10 | s | semmle.label | s |
|
||||
| main.rs:301:10:301:10 | s | semmle.label | s |
|
||||
| main.rs:308:9:308:9 | s | semmle.label | s |
|
||||
| main.rs:308:9:308:9 | s | semmle.label | s |
|
||||
| main.rs:308:13:308:22 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:308:13:308:22 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:309:5:309:15 | simple_sink | semmle.label | simple_sink |
|
||||
| main.rs:309:5:309:15 | simple_sink | semmle.label | simple_sink |
|
||||
| main.rs:309:17:309:17 | s | semmle.label | s |
|
||||
| main.rs:309:17:309:17 | s | semmle.label | s |
|
||||
| main.rs:317:5:317:14 | arg_source | semmle.label | arg_source |
|
||||
| main.rs:317:5:317:14 | arg_source | semmle.label | arg_source |
|
||||
| main.rs:317:16:317:16 | [post] i | semmle.label | [post] i |
|
||||
| main.rs:317:16:317:16 | [post] i | semmle.label | [post] i |
|
||||
| main.rs:318:10:318:10 | i | semmle.label | i |
|
||||
| main.rs:318:10:318:10 | i | semmle.label | i |
|
||||
| main.rs:370:9:370:10 | x1 | semmle.label | x1 |
|
||||
| main.rs:370:9:370:10 | x1 | semmle.label | x1 |
|
||||
| main.rs:370:14:370:23 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:370:14:370:23 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:370:14:370:30 | ... .max(...) | semmle.label | ... .max(...) |
|
||||
| main.rs:370:14:370:30 | ... .max(...) | semmle.label | ... .max(...) |
|
||||
| main.rs:371:10:371:11 | x1 | semmle.label | x1 |
|
||||
| main.rs:371:10:371:11 | x1 | semmle.label | x1 |
|
||||
| main.rs:373:9:373:10 | x2 [MyStruct.field1] | semmle.label | x2 [MyStruct.field1] |
|
||||
| main.rs:373:9:373:10 | x2 [MyStruct.field1] | semmle.label | x2 [MyStruct.field1] |
|
||||
| main.rs:373:14:380:6 | ... .max(...) [MyStruct.field1] | semmle.label | ... .max(...) [MyStruct.field1] |
|
||||
| main.rs:373:14:380:6 | ... .max(...) [MyStruct.field1] | semmle.label | ... .max(...) [MyStruct.field1] |
|
||||
| main.rs:373:15:376:5 | MyStruct {...} [MyStruct.field1] | semmle.label | MyStruct {...} [MyStruct.field1] |
|
||||
| main.rs:373:15:376:5 | MyStruct {...} [MyStruct.field1] | semmle.label | MyStruct {...} [MyStruct.field1] |
|
||||
| main.rs:374:17:374:26 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:374:17:374:26 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:381:10:381:11 | x2 [MyStruct.field1] | semmle.label | x2 [MyStruct.field1] |
|
||||
| main.rs:381:10:381:11 | x2 [MyStruct.field1] | semmle.label | x2 [MyStruct.field1] |
|
||||
| main.rs:381:10:381:18 | x2.field1 | semmle.label | x2.field1 |
|
||||
| main.rs:381:10:381:18 | x2.field1 | semmle.label | x2.field1 |
|
||||
| main.rs:386:9:386:10 | x4 | semmle.label | x4 |
|
||||
| main.rs:386:9:386:10 | x4 | semmle.label | x4 |
|
||||
| main.rs:386:14:386:23 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:386:14:386:23 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:386:14:386:30 | ... .max(...) | semmle.label | ... .max(...) |
|
||||
| main.rs:386:14:386:30 | ... .max(...) | semmle.label | ... .max(...) |
|
||||
| main.rs:387:10:387:11 | x4 | semmle.label | x4 |
|
||||
| main.rs:387:10:387:11 | x4 | semmle.label | x4 |
|
||||
| main.rs:389:9:389:10 | x5 | semmle.label | x5 |
|
||||
| main.rs:389:14:389:23 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:389:14:389:30 | ... .lt(...) | semmle.label | ... .lt(...) |
|
||||
| main.rs:390:10:390:11 | x5 | semmle.label | x5 |
|
||||
| main.rs:392:9:392:10 | x6 | semmle.label | x6 |
|
||||
| main.rs:392:14:392:23 | source(...) | semmle.label | source(...) |
|
||||
| main.rs:392:14:392:27 | ... < ... | semmle.label | ... < ... |
|
||||
| main.rs:393:10:393:11 | x6 | semmle.label | x6 |
|
||||
subpaths
|
||||
| main.rs:198:23:198:23 | f [captured s] | main.rs:197:40:197:40 | s | main.rs:197:17:197:42 | if ... {...} else {...} | main.rs:198:13:198:24 | apply(...) |
|
||||
| main.rs:198:23:198:23 | f [captured s] | main.rs:197:40:197:40 | s | main.rs:197:17:197:42 | if ... {...} else {...} | main.rs:198:13:198:24 | apply(...) |
|
||||
@@ -658,21 +658,21 @@ invalidSpecComponent
|
||||
| main.rs:239:47:239:47 | i | main.rs:236:13:236:23 | enum_source | main.rs:239:47:239:47 | i | $@ | main.rs:236:13:236:23 | enum_source | enum_source |
|
||||
| main.rs:247:47:247:47 | i | main.rs:245:15:245:20 | source | main.rs:247:47:247:47 | i | $@ | main.rs:245:15:245:20 | source | source |
|
||||
| main.rs:247:47:247:47 | i | main.rs:245:15:245:20 | source | main.rs:247:47:247:47 | i | $@ | main.rs:245:15:245:20 | source | source |
|
||||
| main.rs:257:5:257:13 | enum_sink | main.rs:256:13:256:22 | source(...) | main.rs:257:5:257:13 | enum_sink | $@ | main.rs:256:13:256:22 | source(...) | source(...) |
|
||||
| main.rs:257:5:257:13 | enum_sink | main.rs:256:13:256:22 | source(...) | main.rs:257:5:257:13 | enum_sink | $@ | main.rs:256:13:256:22 | source(...) | source(...) |
|
||||
| main.rs:264:7:264:10 | sink | main.rs:262:13:262:22 | source(...) | main.rs:264:7:264:10 | sink | $@ | main.rs:262:13:262:22 | source(...) | source(...) |
|
||||
| main.rs:264:7:264:10 | sink | main.rs:262:13:262:22 | source(...) | main.rs:264:7:264:10 | sink | $@ | main.rs:262:13:262:22 | source(...) | source(...) |
|
||||
| main.rs:274:10:274:10 | s | main.rs:273:13:273:25 | simple_source | main.rs:274:10:274:10 | s | $@ | main.rs:273:13:273:25 | simple_source | simple_source |
|
||||
| main.rs:274:10:274:10 | s | main.rs:273:13:273:25 | simple_source | main.rs:274:10:274:10 | s | $@ | main.rs:273:13:273:25 | simple_source | simple_source |
|
||||
| main.rs:282:5:282:15 | simple_sink | main.rs:281:13:281:22 | source(...) | main.rs:282:5:282:15 | simple_sink | $@ | main.rs:281:13:281:22 | source(...) | source(...) |
|
||||
| main.rs:282:5:282:15 | simple_sink | main.rs:281:13:281:22 | source(...) | main.rs:282:5:282:15 | simple_sink | $@ | main.rs:281:13:281:22 | source(...) | source(...) |
|
||||
| main.rs:291:10:291:10 | i | main.rs:290:5:290:14 | arg_source | main.rs:291:10:291:10 | i | $@ | main.rs:290:5:290:14 | arg_source | arg_source |
|
||||
| main.rs:291:10:291:10 | i | main.rs:290:5:290:14 | arg_source | main.rs:291:10:291:10 | i | $@ | main.rs:290:5:290:14 | arg_source | arg_source |
|
||||
| main.rs:344:10:344:11 | x1 | main.rs:343:14:343:23 | source(...) | main.rs:344:10:344:11 | x1 | $@ | main.rs:343:14:343:23 | source(...) | source(...) |
|
||||
| main.rs:344:10:344:11 | x1 | main.rs:343:14:343:23 | source(...) | main.rs:344:10:344:11 | x1 | $@ | main.rs:343:14:343:23 | source(...) | source(...) |
|
||||
| main.rs:354:10:354:18 | x2.field1 | main.rs:347:17:347:26 | source(...) | main.rs:354:10:354:18 | x2.field1 | $@ | main.rs:347:17:347:26 | source(...) | source(...) |
|
||||
| main.rs:354:10:354:18 | x2.field1 | main.rs:347:17:347:26 | source(...) | main.rs:354:10:354:18 | x2.field1 | $@ | main.rs:347:17:347:26 | source(...) | source(...) |
|
||||
| main.rs:360:10:360:11 | x4 | main.rs:359:14:359:23 | source(...) | main.rs:360:10:360:11 | x4 | $@ | main.rs:359:14:359:23 | source(...) | source(...) |
|
||||
| main.rs:360:10:360:11 | x4 | main.rs:359:14:359:23 | source(...) | main.rs:360:10:360:11 | x4 | $@ | main.rs:359:14:359:23 | source(...) | source(...) |
|
||||
| main.rs:363:10:363:11 | x5 | main.rs:362:14:362:23 | source(...) | main.rs:363:10:363:11 | x5 | $@ | main.rs:362:14:362:23 | source(...) | source(...) |
|
||||
| main.rs:366:10:366:11 | x6 | main.rs:365:14:365:23 | source(...) | main.rs:366:10:366:11 | x6 | $@ | main.rs:365:14:365:23 | source(...) | source(...) |
|
||||
| main.rs:284:5:284:13 | enum_sink | main.rs:283:13:283:22 | source(...) | main.rs:284:5:284:13 | enum_sink | $@ | main.rs:283:13:283:22 | source(...) | source(...) |
|
||||
| main.rs:284:5:284:13 | enum_sink | main.rs:283:13:283:22 | source(...) | main.rs:284:5:284:13 | enum_sink | $@ | main.rs:283:13:283:22 | source(...) | source(...) |
|
||||
| main.rs:291:7:291:10 | sink | main.rs:289:13:289:22 | source(...) | main.rs:291:7:291:10 | sink | $@ | main.rs:289:13:289:22 | source(...) | source(...) |
|
||||
| main.rs:291:7:291:10 | sink | main.rs:289:13:289:22 | source(...) | main.rs:291:7:291:10 | sink | $@ | main.rs:289:13:289:22 | source(...) | source(...) |
|
||||
| main.rs:301:10:301:10 | s | main.rs:300:13:300:25 | simple_source | main.rs:301:10:301:10 | s | $@ | main.rs:300:13:300:25 | simple_source | simple_source |
|
||||
| main.rs:301:10:301:10 | s | main.rs:300:13:300:25 | simple_source | main.rs:301:10:301:10 | s | $@ | main.rs:300:13:300:25 | simple_source | simple_source |
|
||||
| main.rs:309:5:309:15 | simple_sink | main.rs:308:13:308:22 | source(...) | main.rs:309:5:309:15 | simple_sink | $@ | main.rs:308:13:308:22 | source(...) | source(...) |
|
||||
| main.rs:309:5:309:15 | simple_sink | main.rs:308:13:308:22 | source(...) | main.rs:309:5:309:15 | simple_sink | $@ | main.rs:308:13:308:22 | source(...) | source(...) |
|
||||
| main.rs:318:10:318:10 | i | main.rs:317:5:317:14 | arg_source | main.rs:318:10:318:10 | i | $@ | main.rs:317:5:317:14 | arg_source | arg_source |
|
||||
| main.rs:318:10:318:10 | i | main.rs:317:5:317:14 | arg_source | main.rs:318:10:318:10 | i | $@ | main.rs:317:5:317:14 | arg_source | arg_source |
|
||||
| main.rs:371:10:371:11 | x1 | main.rs:370:14:370:23 | source(...) | main.rs:371:10:371:11 | x1 | $@ | main.rs:370:14:370:23 | source(...) | source(...) |
|
||||
| main.rs:371:10:371:11 | x1 | main.rs:370:14:370:23 | source(...) | main.rs:371:10:371:11 | x1 | $@ | main.rs:370:14:370:23 | source(...) | source(...) |
|
||||
| main.rs:381:10:381:18 | x2.field1 | main.rs:374:17:374:26 | source(...) | main.rs:381:10:381:18 | x2.field1 | $@ | main.rs:374:17:374:26 | source(...) | source(...) |
|
||||
| main.rs:381:10:381:18 | x2.field1 | main.rs:374:17:374:26 | source(...) | main.rs:381:10:381:18 | x2.field1 | $@ | main.rs:374:17:374:26 | source(...) | source(...) |
|
||||
| main.rs:387:10:387:11 | x4 | main.rs:386:14:386:23 | source(...) | main.rs:387:10:387:11 | x4 | $@ | main.rs:386:14:386:23 | source(...) | source(...) |
|
||||
| main.rs:387:10:387:11 | x4 | main.rs:386:14:386:23 | source(...) | main.rs:387:10:387:11 | x4 | $@ | main.rs:386:14:386:23 | source(...) | source(...) |
|
||||
| main.rs:390:10:390:11 | x5 | main.rs:389:14:389:23 | source(...) | main.rs:390:10:390:11 | x5 | $@ | main.rs:389:14:389:23 | source(...) | source(...) |
|
||||
| main.rs:393:10:393:11 | x6 | main.rs:392:14:392:23 | source(...) | main.rs:393:10:393:11 | x6 | $@ | main.rs:392:14:392:23 | source(...) | source(...) |
|
||||
|
||||
@@ -7,6 +7,7 @@ extensions:
|
||||
- ["main::enum_source", "ReturnValue.Field[main::MyFieldEnum::D::field_d]", "test-source", "manual"]
|
||||
- ["<main::MyFieldEnum>::source", "ReturnValue.Field[main::MyFieldEnum::C::field_c]", "test-source", "manual"]
|
||||
- ["main::arg_source", "Argument[0]", "test-source", "manual"]
|
||||
- ["main::source_into_function::pass_source", "Argument[1].Parameter[0]", "test-source", "manual"]
|
||||
- addsTo:
|
||||
pack: codeql/rust-all
|
||||
extensible: sinkModel
|
||||
|
||||
Reference in New Issue
Block a user