Skip to content

Commit 0fc5778

Browse files
committed
PS: Accept dataflow/taint-tracking/type-tracking regressions.
1 parent c840f86 commit 0fc5778

File tree

11 files changed

+545
-768
lines changed

11 files changed

+545
-768
lines changed

powershell/ql/test/library-tests/dataflow/fields/test.expected

Lines changed: 133 additions & 208 deletions
Large diffs are not rendered by default.

powershell/ql/test/library-tests/dataflow/fields/test.ps1

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
param($a, $arr1, $arr2, $arr3, $arr4, $arr5, $arr6, $arr7, $arr8, $arr9, $unknown, $unknown1, $unknown2, $unknown3, $unknown4, $unknown5, $unknown6, $unknown7, $unknown8)
2+
13
$a.f = Source "1"
24
Sink $a.f # $ hasValueFlow=1
35

Lines changed: 51 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,51 @@
1-
| test.ps1:1:1:1:4 | a1 | test.ps1:2:6:2:9 | a1 |
2-
| test.ps1:1:7:1:13 | call to Source | test.ps1:1:1:1:4 | a1 |
3-
| test.ps1:1:7:1:13 | call to Source | test.ps1:1:1:1:13 | ...=... |
4-
| test.ps1:2:1:2:9 | call to Sink | test.ps1:2:1:2:9 | pre-return value for call to Sink |
5-
| test.ps1:2:1:2:9 | call to Sink | test.ps1:2:1:2:9 | pre-return value for call to Sink |
6-
| test.ps1:2:1:2:9 | implicit unwrapping of call to Sink | test.ps1:1:1:21:28 | return value for test.ps1 |
7-
| test.ps1:2:1:2:9 | pre-return value for call to Sink | test.ps1:2:1:2:9 | implicit unwrapping of call to Sink |
8-
| test.ps1:4:1:4:3 | b | test.ps1:5:4:5:6 | b |
9-
| test.ps1:4:6:4:13 | call to GetBool | test.ps1:4:1:4:3 | b |
10-
| test.ps1:4:6:4:13 | call to GetBool | test.ps1:4:1:4:13 | ...=... |
11-
| test.ps1:5:4:5:6 | b | test.ps1:10:14:10:16 | b |
12-
| test.ps1:6:5:6:8 | a2 | test.ps1:8:6:8:9 | a2 |
13-
| test.ps1:6:11:6:17 | call to Source | test.ps1:6:5:6:8 | a2 |
14-
| test.ps1:6:11:6:17 | call to Source | test.ps1:6:5:6:17 | ...=... |
15-
| test.ps1:8:1:8:9 | call to Sink | test.ps1:8:1:8:9 | pre-return value for call to Sink |
16-
| test.ps1:8:1:8:9 | call to Sink | test.ps1:8:1:8:9 | pre-return value for call to Sink |
17-
| test.ps1:8:1:8:9 | implicit unwrapping of call to Sink | test.ps1:1:1:21:28 | return value for test.ps1 |
18-
| test.ps1:8:1:8:9 | pre-return value for call to Sink | test.ps1:8:1:8:9 | implicit unwrapping of call to Sink |
19-
| test.ps1:10:1:10:3 | c | test.ps1:11:6:11:8 | c |
20-
| test.ps1:10:6:10:16 | [...]... | test.ps1:10:1:10:3 | c |
21-
| test.ps1:10:6:10:16 | [...]... | test.ps1:10:1:10:16 | ...=... |
22-
| test.ps1:10:6:10:16 | [...]... | test.ps1:10:6:10:16 | [...]... |
23-
| test.ps1:10:14:10:16 | b | test.ps1:10:6:10:16 | [...]... |
24-
| test.ps1:11:1:11:8 | call to Sink | test.ps1:11:1:11:8 | pre-return value for call to Sink |
25-
| test.ps1:11:1:11:8 | call to Sink | test.ps1:11:1:11:8 | pre-return value for call to Sink |
26-
| test.ps1:11:1:11:8 | implicit unwrapping of call to Sink | test.ps1:1:1:21:28 | return value for test.ps1 |
27-
| test.ps1:11:1:11:8 | pre-return value for call to Sink | test.ps1:11:1:11:8 | implicit unwrapping of call to Sink |
28-
| test.ps1:11:6:11:8 | [post] c | test.ps1:13:7:13:9 | c |
29-
| test.ps1:11:6:11:8 | c | test.ps1:13:7:13:9 | c |
30-
| test.ps1:13:1:13:3 | d | test.ps1:14:6:14:8 | d |
31-
| test.ps1:13:6:13:10 | (...) | test.ps1:13:1:13:3 | d |
32-
| test.ps1:13:6:13:10 | (...) | test.ps1:13:1:13:10 | ...=... |
33-
| test.ps1:13:6:13:10 | (...) | test.ps1:13:6:13:10 | (...) |
34-
| test.ps1:13:7:13:9 | c | test.ps1:13:6:13:10 | (...) |
35-
| test.ps1:13:7:13:9 | c | test.ps1:13:7:13:9 | c |
36-
| test.ps1:14:1:14:8 | call to Sink | test.ps1:14:1:14:8 | pre-return value for call to Sink |
37-
| test.ps1:14:1:14:8 | call to Sink | test.ps1:14:1:14:8 | pre-return value for call to Sink |
38-
| test.ps1:14:1:14:8 | implicit unwrapping of call to Sink | test.ps1:1:1:21:28 | return value for test.ps1 |
39-
| test.ps1:14:1:14:8 | pre-return value for call to Sink | test.ps1:14:1:14:8 | implicit unwrapping of call to Sink |
40-
| test.ps1:14:6:14:8 | [post] d | test.ps1:16:6:16:8 | d |
41-
| test.ps1:14:6:14:8 | d | test.ps1:16:6:16:8 | d |
42-
| test.ps1:16:1:16:3 | e | test.ps1:17:6:17:8 | e |
43-
| test.ps1:16:6:16:12 | ...+... | test.ps1:16:1:16:3 | e |
44-
| test.ps1:16:6:16:12 | ...+... | test.ps1:16:1:16:12 | ...=... |
45-
| test.ps1:16:6:16:12 | ...+... | test.ps1:16:6:16:12 | ...+... |
46-
| test.ps1:17:1:17:8 | call to Sink | test.ps1:17:1:17:8 | pre-return value for call to Sink |
47-
| test.ps1:17:1:17:8 | call to Sink | test.ps1:17:1:17:8 | pre-return value for call to Sink |
48-
| test.ps1:17:1:17:8 | implicit unwrapping of call to Sink | test.ps1:1:1:21:28 | return value for test.ps1 |
49-
| test.ps1:17:1:17:8 | pre-return value for call to Sink | test.ps1:17:1:17:8 | implicit unwrapping of call to Sink |
50-
| test.ps1:19:1:19:3 | f | test.ps1:21:25:21:27 | f |
51-
| test.ps1:19:6:19:12 | call to Source | test.ps1:19:1:19:3 | f |
52-
| test.ps1:19:6:19:12 | call to Source | test.ps1:19:1:19:12 | ...=... |
53-
| test.ps1:21:1:21:28 | call to Sink | test.ps1:21:1:21:28 | pre-return value for call to Sink |
54-
| test.ps1:21:1:21:28 | call to Sink | test.ps1:21:1:21:28 | pre-return value for call to Sink |
55-
| test.ps1:21:1:21:28 | implicit unwrapping of call to Sink | test.ps1:1:1:21:28 | return value for test.ps1 |
56-
| test.ps1:21:1:21:28 | pre-return value for call to Sink | test.ps1:21:1:21:28 | implicit unwrapping of call to Sink |
1+
| test.ps1:1:1:1:3 | a1 | test.ps1:2:6:2:8 | a1 |
2+
| test.ps1:1:7:1:12 | Call to Source | test.ps1:1:1:1:3 | a1 |
3+
| test.ps1:2:1:2:8 | Call to Sink | test.ps1:2:1:2:8 | pre-return value for Call to Sink |
4+
| test.ps1:2:1:2:8 | Call to Sink | test.ps1:2:1:2:8 | pre-return value for Call to Sink |
5+
| test.ps1:2:1:2:8 | implicit unwrapping of Call to Sink | test.ps1:1:1:21:27 | return value for {...} |
6+
| test.ps1:2:1:2:8 | pre-return value for Call to Sink | test.ps1:2:1:2:8 | implicit unwrapping of Call to Sink |
7+
| test.ps1:4:1:4:2 | b | test.ps1:5:4:5:5 | b |
8+
| test.ps1:4:6:4:12 | Call to GetBool | test.ps1:4:1:4:2 | b |
9+
| test.ps1:5:1:7:1 | if (...) {...} | test.ps1:5:1:7:1 | pre-return value for if (...) {...} |
10+
| test.ps1:5:1:7:1 | if (...) {...} | test.ps1:5:1:7:1 | pre-return value for if (...) {...} |
11+
| test.ps1:5:1:7:1 | implicit unwrapping of if (...) {...} | test.ps1:1:1:21:27 | return value for {...} |
12+
| test.ps1:5:1:7:1 | phi | test.ps1:8:6:8:8 | a2 |
13+
| test.ps1:5:1:7:1 | pre-return value for if (...) {...} | test.ps1:5:1:7:1 | implicit unwrapping of if (...) {...} |
14+
| test.ps1:5:4:5:5 | b | test.ps1:10:14:10:15 | b |
15+
| test.ps1:6:5:6:7 | a2 | test.ps1:6:11:6:16 | [input] phi |
16+
| test.ps1:6:11:6:16 | Call to Source | test.ps1:6:5:6:7 | a2 |
17+
| test.ps1:6:11:6:16 | [input] phi | test.ps1:5:1:7:1 | phi |
18+
| test.ps1:8:1:8:8 | Call to Sink | test.ps1:8:1:8:8 | pre-return value for Call to Sink |
19+
| test.ps1:8:1:8:8 | Call to Sink | test.ps1:8:1:8:8 | pre-return value for Call to Sink |
20+
| test.ps1:8:1:8:8 | implicit unwrapping of Call to Sink | test.ps1:1:1:21:27 | return value for {...} |
21+
| test.ps1:8:1:8:8 | pre-return value for Call to Sink | test.ps1:8:1:8:8 | implicit unwrapping of Call to Sink |
22+
| test.ps1:10:1:10:2 | c | test.ps1:11:6:11:7 | c |
23+
| test.ps1:10:6:10:15 | [...]... | test.ps1:10:1:10:2 | c |
24+
| test.ps1:10:14:10:15 | b | test.ps1:10:6:10:15 | [...]... |
25+
| test.ps1:11:1:11:7 | Call to Sink | test.ps1:11:1:11:7 | pre-return value for Call to Sink |
26+
| test.ps1:11:1:11:7 | Call to Sink | test.ps1:11:1:11:7 | pre-return value for Call to Sink |
27+
| test.ps1:11:1:11:7 | implicit unwrapping of Call to Sink | test.ps1:1:1:21:27 | return value for {...} |
28+
| test.ps1:11:1:11:7 | pre-return value for Call to Sink | test.ps1:11:1:11:7 | implicit unwrapping of Call to Sink |
29+
| test.ps1:11:6:11:7 | [post] c | test.ps1:13:7:13:8 | c |
30+
| test.ps1:11:6:11:7 | c | test.ps1:13:7:13:8 | c |
31+
| test.ps1:13:1:13:2 | d | test.ps1:14:6:14:7 | d |
32+
| test.ps1:13:6:13:9 | (...) | test.ps1:13:1:13:2 | d |
33+
| test.ps1:13:7:13:8 | c | test.ps1:13:6:13:9 | (...) |
34+
| test.ps1:14:1:14:7 | Call to Sink | test.ps1:14:1:14:7 | pre-return value for Call to Sink |
35+
| test.ps1:14:1:14:7 | Call to Sink | test.ps1:14:1:14:7 | pre-return value for Call to Sink |
36+
| test.ps1:14:1:14:7 | implicit unwrapping of Call to Sink | test.ps1:1:1:21:27 | return value for {...} |
37+
| test.ps1:14:1:14:7 | pre-return value for Call to Sink | test.ps1:14:1:14:7 | implicit unwrapping of Call to Sink |
38+
| test.ps1:14:6:14:7 | [post] d | test.ps1:16:6:16:7 | d |
39+
| test.ps1:14:6:14:7 | d | test.ps1:16:6:16:7 | d |
40+
| test.ps1:16:1:16:2 | e | test.ps1:17:6:17:7 | e |
41+
| test.ps1:16:6:16:11 | ...+... | test.ps1:16:1:16:2 | e |
42+
| test.ps1:17:1:17:7 | Call to Sink | test.ps1:17:1:17:7 | pre-return value for Call to Sink |
43+
| test.ps1:17:1:17:7 | Call to Sink | test.ps1:17:1:17:7 | pre-return value for Call to Sink |
44+
| test.ps1:17:1:17:7 | implicit unwrapping of Call to Sink | test.ps1:1:1:21:27 | return value for {...} |
45+
| test.ps1:17:1:17:7 | pre-return value for Call to Sink | test.ps1:17:1:17:7 | implicit unwrapping of Call to Sink |
46+
| test.ps1:19:1:19:2 | f | test.ps1:21:25:21:26 | f |
47+
| test.ps1:19:6:19:11 | Call to Source | test.ps1:19:1:19:2 | f |
48+
| test.ps1:21:1:21:27 | Call to Sink | test.ps1:21:1:21:27 | pre-return value for Call to Sink |
49+
| test.ps1:21:1:21:27 | Call to Sink | test.ps1:21:1:21:27 | pre-return value for Call to Sink |
50+
| test.ps1:21:1:21:27 | implicit unwrapping of Call to Sink | test.ps1:1:1:21:27 | return value for {...} |
51+
| test.ps1:21:1:21:27 | pre-return value for Call to Sink | test.ps1:21:1:21:27 | implicit unwrapping of Call to Sink |
Lines changed: 61 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -1,65 +1,61 @@
1-
| test.ps1:1:1:1:4 | a1 | test.ps1:2:6:2:9 | a1 |
2-
| test.ps1:1:7:1:13 | call to Source | test.ps1:1:1:1:4 | a1 |
3-
| test.ps1:1:7:1:13 | call to Source | test.ps1:1:1:1:13 | ...=... |
4-
| test.ps1:2:1:2:9 | call to Sink | test.ps1:2:1:2:9 | pre-return value for call to Sink |
5-
| test.ps1:2:1:2:9 | call to Sink | test.ps1:2:1:2:9 | pre-return value for call to Sink |
6-
| test.ps1:2:1:2:9 | implicit unwrapping of call to Sink | test.ps1:1:1:21:28 | return value for test.ps1 |
7-
| test.ps1:2:1:2:9 | pre-return value for call to Sink | test.ps1:2:1:2:9 | implicit unwrapping of call to Sink |
8-
| test.ps1:2:1:2:9 | pre-return value for call to Sink | test.ps1:2:1:2:9 | implicit unwrapping of call to Sink |
9-
| test.ps1:4:1:4:3 | b | test.ps1:5:4:5:6 | b |
10-
| test.ps1:4:6:4:13 | call to GetBool | test.ps1:4:1:4:3 | b |
11-
| test.ps1:4:6:4:13 | call to GetBool | test.ps1:4:1:4:13 | ...=... |
12-
| test.ps1:5:4:5:6 | b | test.ps1:10:14:10:16 | b |
13-
| test.ps1:6:5:6:8 | a2 | test.ps1:8:6:8:9 | a2 |
14-
| test.ps1:6:11:6:17 | call to Source | test.ps1:6:5:6:8 | a2 |
15-
| test.ps1:6:11:6:17 | call to Source | test.ps1:6:5:6:17 | ...=... |
16-
| test.ps1:8:1:8:9 | call to Sink | test.ps1:8:1:8:9 | pre-return value for call to Sink |
17-
| test.ps1:8:1:8:9 | call to Sink | test.ps1:8:1:8:9 | pre-return value for call to Sink |
18-
| test.ps1:8:1:8:9 | implicit unwrapping of call to Sink | test.ps1:1:1:21:28 | return value for test.ps1 |
19-
| test.ps1:8:1:8:9 | pre-return value for call to Sink | test.ps1:8:1:8:9 | implicit unwrapping of call to Sink |
20-
| test.ps1:8:1:8:9 | pre-return value for call to Sink | test.ps1:8:1:8:9 | implicit unwrapping of call to Sink |
21-
| test.ps1:10:1:10:3 | c | test.ps1:11:6:11:8 | c |
22-
| test.ps1:10:6:10:16 | [...]... | test.ps1:10:1:10:3 | c |
23-
| test.ps1:10:6:10:16 | [...]... | test.ps1:10:1:10:16 | ...=... |
24-
| test.ps1:10:6:10:16 | [...]... | test.ps1:10:6:10:16 | [...]... |
25-
| test.ps1:10:14:10:16 | b | test.ps1:10:6:10:16 | [...]... |
26-
| test.ps1:11:1:11:8 | call to Sink | test.ps1:11:1:11:8 | pre-return value for call to Sink |
27-
| test.ps1:11:1:11:8 | call to Sink | test.ps1:11:1:11:8 | pre-return value for call to Sink |
28-
| test.ps1:11:1:11:8 | implicit unwrapping of call to Sink | test.ps1:1:1:21:28 | return value for test.ps1 |
29-
| test.ps1:11:1:11:8 | pre-return value for call to Sink | test.ps1:11:1:11:8 | implicit unwrapping of call to Sink |
30-
| test.ps1:11:1:11:8 | pre-return value for call to Sink | test.ps1:11:1:11:8 | implicit unwrapping of call to Sink |
31-
| test.ps1:11:6:11:8 | [post] c | test.ps1:13:7:13:9 | c |
32-
| test.ps1:11:6:11:8 | c | test.ps1:13:7:13:9 | c |
33-
| test.ps1:13:1:13:3 | d | test.ps1:14:6:14:8 | d |
34-
| test.ps1:13:6:13:10 | (...) | test.ps1:13:1:13:3 | d |
35-
| test.ps1:13:6:13:10 | (...) | test.ps1:13:1:13:10 | ...=... |
36-
| test.ps1:13:6:13:10 | (...) | test.ps1:13:6:13:10 | (...) |
37-
| test.ps1:13:7:13:9 | c | test.ps1:13:6:13:10 | (...) |
38-
| test.ps1:13:7:13:9 | c | test.ps1:13:7:13:9 | c |
39-
| test.ps1:14:1:14:8 | call to Sink | test.ps1:14:1:14:8 | pre-return value for call to Sink |
40-
| test.ps1:14:1:14:8 | call to Sink | test.ps1:14:1:14:8 | pre-return value for call to Sink |
41-
| test.ps1:14:1:14:8 | implicit unwrapping of call to Sink | test.ps1:1:1:21:28 | return value for test.ps1 |
42-
| test.ps1:14:1:14:8 | pre-return value for call to Sink | test.ps1:14:1:14:8 | implicit unwrapping of call to Sink |
43-
| test.ps1:14:1:14:8 | pre-return value for call to Sink | test.ps1:14:1:14:8 | implicit unwrapping of call to Sink |
44-
| test.ps1:14:6:14:8 | [post] d | test.ps1:16:6:16:8 | d |
45-
| test.ps1:14:6:14:8 | d | test.ps1:16:6:16:8 | d |
46-
| test.ps1:16:1:16:3 | e | test.ps1:17:6:17:8 | e |
47-
| test.ps1:16:6:16:8 | d | test.ps1:16:6:16:12 | ...+... |
48-
| test.ps1:16:6:16:12 | ...+... | test.ps1:16:1:16:3 | e |
49-
| test.ps1:16:6:16:12 | ...+... | test.ps1:16:1:16:12 | ...=... |
50-
| test.ps1:16:6:16:12 | ...+... | test.ps1:16:6:16:12 | ...+... |
51-
| test.ps1:16:11:16:12 | 1 | test.ps1:16:6:16:12 | ...+... |
52-
| test.ps1:17:1:17:8 | call to Sink | test.ps1:17:1:17:8 | pre-return value for call to Sink |
53-
| test.ps1:17:1:17:8 | call to Sink | test.ps1:17:1:17:8 | pre-return value for call to Sink |
54-
| test.ps1:17:1:17:8 | implicit unwrapping of call to Sink | test.ps1:1:1:21:28 | return value for test.ps1 |
55-
| test.ps1:17:1:17:8 | pre-return value for call to Sink | test.ps1:17:1:17:8 | implicit unwrapping of call to Sink |
56-
| test.ps1:17:1:17:8 | pre-return value for call to Sink | test.ps1:17:1:17:8 | implicit unwrapping of call to Sink |
57-
| test.ps1:19:1:19:3 | f | test.ps1:21:25:21:27 | f |
58-
| test.ps1:19:6:19:12 | call to Source | test.ps1:19:1:19:3 | f |
59-
| test.ps1:19:6:19:12 | call to Source | test.ps1:19:1:19:12 | ...=... |
60-
| test.ps1:21:1:21:28 | call to Sink | test.ps1:21:1:21:28 | pre-return value for call to Sink |
61-
| test.ps1:21:1:21:28 | call to Sink | test.ps1:21:1:21:28 | pre-return value for call to Sink |
62-
| test.ps1:21:1:21:28 | implicit unwrapping of call to Sink | test.ps1:1:1:21:28 | return value for test.ps1 |
63-
| test.ps1:21:1:21:28 | pre-return value for call to Sink | test.ps1:21:1:21:28 | implicit unwrapping of call to Sink |
64-
| test.ps1:21:1:21:28 | pre-return value for call to Sink | test.ps1:21:1:21:28 | implicit unwrapping of call to Sink |
65-
| test.ps1:21:25:21:27 | f | test.ps1:21:6:21:28 | here is a string: $f |
1+
| test.ps1:1:1:1:3 | a1 | test.ps1:2:6:2:8 | a1 |
2+
| test.ps1:1:7:1:12 | Call to Source | test.ps1:1:1:1:3 | a1 |
3+
| test.ps1:2:1:2:8 | Call to Sink | test.ps1:2:1:2:8 | pre-return value for Call to Sink |
4+
| test.ps1:2:1:2:8 | Call to Sink | test.ps1:2:1:2:8 | pre-return value for Call to Sink |
5+
| test.ps1:2:1:2:8 | implicit unwrapping of Call to Sink | test.ps1:1:1:21:27 | return value for {...} |
6+
| test.ps1:2:1:2:8 | pre-return value for Call to Sink | test.ps1:2:1:2:8 | implicit unwrapping of Call to Sink |
7+
| test.ps1:2:1:2:8 | pre-return value for Call to Sink | test.ps1:2:1:2:8 | implicit unwrapping of Call to Sink |
8+
| test.ps1:4:1:4:2 | b | test.ps1:5:4:5:5 | b |
9+
| test.ps1:4:6:4:12 | Call to GetBool | test.ps1:4:1:4:2 | b |
10+
| test.ps1:5:1:7:1 | if (...) {...} | test.ps1:5:1:7:1 | pre-return value for if (...) {...} |
11+
| test.ps1:5:1:7:1 | if (...) {...} | test.ps1:5:1:7:1 | pre-return value for if (...) {...} |
12+
| test.ps1:5:1:7:1 | implicit unwrapping of if (...) {...} | test.ps1:1:1:21:27 | return value for {...} |
13+
| test.ps1:5:1:7:1 | phi | test.ps1:8:6:8:8 | a2 |
14+
| test.ps1:5:1:7:1 | pre-return value for if (...) {...} | test.ps1:5:1:7:1 | implicit unwrapping of if (...) {...} |
15+
| test.ps1:5:1:7:1 | pre-return value for if (...) {...} | test.ps1:5:1:7:1 | implicit unwrapping of if (...) {...} |
16+
| test.ps1:5:4:5:5 | b | test.ps1:10:14:10:15 | b |
17+
| test.ps1:6:5:6:7 | a2 | test.ps1:6:11:6:16 | [input] phi |
18+
| test.ps1:6:11:6:16 | Call to Source | test.ps1:6:5:6:7 | a2 |
19+
| test.ps1:6:11:6:16 | [input] phi | test.ps1:5:1:7:1 | phi |
20+
| test.ps1:8:1:8:8 | Call to Sink | test.ps1:8:1:8:8 | pre-return value for Call to Sink |
21+
| test.ps1:8:1:8:8 | Call to Sink | test.ps1:8:1:8:8 | pre-return value for Call to Sink |
22+
| test.ps1:8:1:8:8 | implicit unwrapping of Call to Sink | test.ps1:1:1:21:27 | return value for {...} |
23+
| test.ps1:8:1:8:8 | pre-return value for Call to Sink | test.ps1:8:1:8:8 | implicit unwrapping of Call to Sink |
24+
| test.ps1:8:1:8:8 | pre-return value for Call to Sink | test.ps1:8:1:8:8 | implicit unwrapping of Call to Sink |
25+
| test.ps1:10:1:10:2 | c | test.ps1:11:6:11:7 | c |
26+
| test.ps1:10:6:10:15 | [...]... | test.ps1:10:1:10:2 | c |
27+
| test.ps1:10:14:10:15 | b | test.ps1:10:6:10:15 | [...]... |
28+
| test.ps1:11:1:11:7 | Call to Sink | test.ps1:11:1:11:7 | pre-return value for Call to Sink |
29+
| test.ps1:11:1:11:7 | Call to Sink | test.ps1:11:1:11:7 | pre-return value for Call to Sink |
30+
| test.ps1:11:1:11:7 | implicit unwrapping of Call to Sink | test.ps1:1:1:21:27 | return value for {...} |
31+
| test.ps1:11:1:11:7 | pre-return value for Call to Sink | test.ps1:11:1:11:7 | implicit unwrapping of Call to Sink |
32+
| test.ps1:11:1:11:7 | pre-return value for Call to Sink | test.ps1:11:1:11:7 | implicit unwrapping of Call to Sink |
33+
| test.ps1:11:6:11:7 | [post] c | test.ps1:13:7:13:8 | c |
34+
| test.ps1:11:6:11:7 | c | test.ps1:13:7:13:8 | c |
35+
| test.ps1:13:1:13:2 | d | test.ps1:14:6:14:7 | d |
36+
| test.ps1:13:6:13:9 | (...) | test.ps1:13:1:13:2 | d |
37+
| test.ps1:13:7:13:8 | c | test.ps1:13:6:13:9 | (...) |
38+
| test.ps1:14:1:14:7 | Call to Sink | test.ps1:14:1:14:7 | pre-return value for Call to Sink |
39+
| test.ps1:14:1:14:7 | Call to Sink | test.ps1:14:1:14:7 | pre-return value for Call to Sink |
40+
| test.ps1:14:1:14:7 | implicit unwrapping of Call to Sink | test.ps1:1:1:21:27 | return value for {...} |
41+
| test.ps1:14:1:14:7 | pre-return value for Call to Sink | test.ps1:14:1:14:7 | implicit unwrapping of Call to Sink |
42+
| test.ps1:14:1:14:7 | pre-return value for Call to Sink | test.ps1:14:1:14:7 | implicit unwrapping of Call to Sink |
43+
| test.ps1:14:6:14:7 | [post] d | test.ps1:16:6:16:7 | d |
44+
| test.ps1:14:6:14:7 | d | test.ps1:16:6:16:7 | d |
45+
| test.ps1:16:1:16:2 | e | test.ps1:17:6:17:7 | e |
46+
| test.ps1:16:6:16:7 | d | test.ps1:16:6:16:11 | ...+... |
47+
| test.ps1:16:6:16:11 | ...+... | test.ps1:16:1:16:2 | e |
48+
| test.ps1:16:11:16:11 | 1 | test.ps1:16:6:16:11 | ...+... |
49+
| test.ps1:17:1:17:7 | Call to Sink | test.ps1:17:1:17:7 | pre-return value for Call to Sink |
50+
| test.ps1:17:1:17:7 | Call to Sink | test.ps1:17:1:17:7 | pre-return value for Call to Sink |
51+
| test.ps1:17:1:17:7 | implicit unwrapping of Call to Sink | test.ps1:1:1:21:27 | return value for {...} |
52+
| test.ps1:17:1:17:7 | pre-return value for Call to Sink | test.ps1:17:1:17:7 | implicit unwrapping of Call to Sink |
53+
| test.ps1:17:1:17:7 | pre-return value for Call to Sink | test.ps1:17:1:17:7 | implicit unwrapping of Call to Sink |
54+
| test.ps1:19:1:19:2 | f | test.ps1:21:25:21:26 | f |
55+
| test.ps1:19:6:19:11 | Call to Source | test.ps1:19:1:19:2 | f |
56+
| test.ps1:21:1:21:27 | Call to Sink | test.ps1:21:1:21:27 | pre-return value for Call to Sink |
57+
| test.ps1:21:1:21:27 | Call to Sink | test.ps1:21:1:21:27 | pre-return value for Call to Sink |
58+
| test.ps1:21:1:21:27 | implicit unwrapping of Call to Sink | test.ps1:1:1:21:27 | return value for {...} |
59+
| test.ps1:21:1:21:27 | pre-return value for Call to Sink | test.ps1:21:1:21:27 | implicit unwrapping of Call to Sink |
60+
| test.ps1:21:1:21:27 | pre-return value for Call to Sink | test.ps1:21:1:21:27 | implicit unwrapping of Call to Sink |
61+
| test.ps1:21:25:21:26 | f | test.ps1:21:6:21:27 | here is a string: $f |

0 commit comments

Comments
 (0)