Skip to content

Commit f582054

Browse files
committed
Rust: Refactor the tests that have multiple control flow paths.
1 parent 91d273a commit f582054

File tree

4 files changed

+225
-158
lines changed

4 files changed

+225
-158
lines changed
Lines changed: 70 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,44 @@
11
#select
2-
| deallocation.rs:23:13:23:14 | m1 | deallocation.rs:20:23:20:24 | m1 | deallocation.rs:23:13:23:14 | m1 | This operation dereferences a pointer that may be $@. | deallocation.rs:20:23:20:24 | m1 | invalid |
3-
| deallocation.rs:25:12:25:31 | ...::read::<...> | deallocation.rs:20:23:20:24 | m1 | deallocation.rs:25:12:25:31 | ...::read::<...> | This operation dereferences a pointer that may be $@. | deallocation.rs:20:23:20:24 | m1 | invalid |
4-
| deallocation.rs:33:5:33:6 | m1 | deallocation.rs:20:23:20:24 | m1 | deallocation.rs:33:5:33:6 | m1 | This operation dereferences a pointer that may be $@. | deallocation.rs:20:23:20:24 | m1 | invalid |
5-
| deallocation.rs:35:4:35:24 | ...::write::<...> | deallocation.rs:20:23:20:24 | m1 | deallocation.rs:35:4:35:24 | ...::write::<...> | This operation dereferences a pointer that may be $@. | deallocation.rs:20:23:20:24 | m1 | invalid |
6-
| deallocation.rs:57:14:57:15 | m2 | deallocation.rs:54:23:54:24 | m2 | deallocation.rs:57:14:57:15 | m2 | This operation dereferences a pointer that may be $@. | deallocation.rs:54:23:54:24 | m2 | invalid |
7-
| deallocation.rs:58:14:58:15 | m2 | deallocation.rs:54:23:54:24 | m2 | deallocation.rs:58:14:58:15 | m2 | This operation dereferences a pointer that may be $@. | deallocation.rs:54:23:54:24 | m2 | invalid |
8-
| deallocation.rs:63:6:63:7 | m2 | deallocation.rs:54:23:54:24 | m2 | deallocation.rs:63:6:63:7 | m2 | This operation dereferences a pointer that may be $@. | deallocation.rs:54:23:54:24 | m2 | invalid |
9-
| deallocation.rs:64:6:64:7 | m2 | deallocation.rs:54:23:54:24 | m2 | deallocation.rs:64:6:64:7 | m2 | This operation dereferences a pointer that may be $@. | deallocation.rs:54:23:54:24 | m2 | invalid |
10-
| deallocation.rs:66:4:66:30 | ...::write::<...> | deallocation.rs:54:23:54:24 | m2 | deallocation.rs:66:4:66:30 | ...::write::<...> | This operation dereferences a pointer that may be $@. | deallocation.rs:54:23:54:24 | m2 | invalid |
11-
| deallocation.rs:84:13:84:18 | my_ptr | deallocation.rs:81:14:81:19 | my_ptr | deallocation.rs:84:13:84:18 | my_ptr | This operation dereferences a pointer that may be $@. | deallocation.rs:81:14:81:19 | my_ptr | invalid |
12-
| deallocation.rs:99:14:99:15 | p1 | deallocation.rs:92:23:92:40 | ...::dangling | deallocation.rs:99:14:99:15 | p1 | This operation dereferences a pointer that may be $@. | deallocation.rs:92:23:92:40 | ...::dangling | invalid |
13-
| deallocation.rs:100:14:100:15 | p2 | deallocation.rs:93:21:93:42 | ...::dangling_mut | deallocation.rs:100:14:100:15 | p2 | This operation dereferences a pointer that may be $@. | deallocation.rs:93:21:93:42 | ...::dangling_mut | invalid |
14-
| deallocation.rs:101:14:101:15 | p3 | deallocation.rs:94:23:94:36 | ...::null | deallocation.rs:101:14:101:15 | p3 | This operation dereferences a pointer that may be $@. | deallocation.rs:94:23:94:36 | ...::null | invalid |
15-
| deallocation.rs:148:14:148:15 | p1 | deallocation.rs:145:27:145:28 | p1 | deallocation.rs:148:14:148:15 | p1 | This operation dereferences a pointer that may be $@. | deallocation.rs:145:27:145:28 | p1 | invalid |
16-
| deallocation.rs:179:18:179:20 | ptr | deallocation.rs:173:27:173:29 | ptr | deallocation.rs:179:18:179:20 | ptr | This operation dereferences a pointer that may be $@. | deallocation.rs:173:27:173:29 | ptr | invalid |
2+
| deallocation.rs:26:15:26:16 | m1 | deallocation.rs:20:23:20:24 | m1 | deallocation.rs:26:15:26:16 | m1 | This operation dereferences a pointer that may be $@. | deallocation.rs:20:23:20:24 | m1 | invalid |
3+
| deallocation.rs:33:14:33:33 | ...::read::<...> | deallocation.rs:20:23:20:24 | m1 | deallocation.rs:33:14:33:33 | ...::read::<...> | This operation dereferences a pointer that may be $@. | deallocation.rs:20:23:20:24 | m1 | invalid |
4+
| deallocation.rs:40:6:40:7 | m1 | deallocation.rs:20:23:20:24 | m1 | deallocation.rs:40:6:40:7 | m1 | This operation dereferences a pointer that may be $@. | deallocation.rs:20:23:20:24 | m1 | invalid |
5+
| deallocation.rs:45:5:45:25 | ...::write::<...> | deallocation.rs:20:23:20:24 | m1 | deallocation.rs:45:5:45:25 | ...::write::<...> | This operation dereferences a pointer that may be $@. | deallocation.rs:20:23:20:24 | m1 | invalid |
6+
| deallocation.rs:72:16:72:17 | m2 | deallocation.rs:66:23:66:24 | m2 | deallocation.rs:72:16:72:17 | m2 | This operation dereferences a pointer that may be $@. | deallocation.rs:66:23:66:24 | m2 | invalid |
7+
| deallocation.rs:77:16:77:17 | m2 | deallocation.rs:66:23:66:24 | m2 | deallocation.rs:77:16:77:17 | m2 | This operation dereferences a pointer that may be $@. | deallocation.rs:66:23:66:24 | m2 | invalid |
8+
| deallocation.rs:82:7:82:8 | m2 | deallocation.rs:66:23:66:24 | m2 | deallocation.rs:82:7:82:8 | m2 | This operation dereferences a pointer that may be $@. | deallocation.rs:66:23:66:24 | m2 | invalid |
9+
| deallocation.rs:86:7:86:8 | m2 | deallocation.rs:66:23:66:24 | m2 | deallocation.rs:86:7:86:8 | m2 | This operation dereferences a pointer that may be $@. | deallocation.rs:66:23:66:24 | m2 | invalid |
10+
| deallocation.rs:91:5:91:31 | ...::write::<...> | deallocation.rs:66:23:66:24 | m2 | deallocation.rs:91:5:91:31 | ...::write::<...> | This operation dereferences a pointer that may be $@. | deallocation.rs:66:23:66:24 | m2 | invalid |
11+
| deallocation.rs:111:13:111:18 | my_ptr | deallocation.rs:108:14:108:19 | my_ptr | deallocation.rs:111:13:111:18 | my_ptr | This operation dereferences a pointer that may be $@. | deallocation.rs:108:14:108:19 | my_ptr | invalid |
12+
| deallocation.rs:126:14:126:15 | p1 | deallocation.rs:119:23:119:40 | ...::dangling | deallocation.rs:126:14:126:15 | p1 | This operation dereferences a pointer that may be $@. | deallocation.rs:119:23:119:40 | ...::dangling | invalid |
13+
| deallocation.rs:127:14:127:15 | p2 | deallocation.rs:120:21:120:42 | ...::dangling_mut | deallocation.rs:127:14:127:15 | p2 | This operation dereferences a pointer that may be $@. | deallocation.rs:120:21:120:42 | ...::dangling_mut | invalid |
14+
| deallocation.rs:128:14:128:15 | p3 | deallocation.rs:121:23:121:36 | ...::null | deallocation.rs:128:14:128:15 | p3 | This operation dereferences a pointer that may be $@. | deallocation.rs:121:23:121:36 | ...::null | invalid |
15+
| deallocation.rs:176:15:176:16 | p1 | deallocation.rs:172:27:172:28 | p1 | deallocation.rs:176:15:176:16 | p1 | This operation dereferences a pointer that may be $@. | deallocation.rs:172:27:172:28 | p1 | invalid |
16+
| deallocation.rs:210:18:210:20 | ptr | deallocation.rs:204:27:204:29 | ptr | deallocation.rs:210:18:210:20 | ptr | This operation dereferences a pointer that may be $@. | deallocation.rs:204:27:204:29 | ptr | invalid |
1717
edges
18-
| deallocation.rs:20:23:20:24 | m1 | deallocation.rs:23:13:23:14 | m1 | provenance | |
19-
| deallocation.rs:20:23:20:24 | m1 | deallocation.rs:25:33:25:34 | m1 | provenance | |
20-
| deallocation.rs:25:33:25:34 | m1 | deallocation.rs:25:12:25:31 | ...::read::<...> | provenance | MaD:1 Sink:MaD:1 |
21-
| deallocation.rs:25:33:25:34 | m1 | deallocation.rs:33:5:33:6 | m1 | provenance | |
22-
| deallocation.rs:25:33:25:34 | m1 | deallocation.rs:33:5:33:6 | m1 | provenance | |
23-
| deallocation.rs:33:5:33:6 | m1 | deallocation.rs:35:26:35:27 | m1 | provenance | |
24-
| deallocation.rs:35:26:35:27 | m1 | deallocation.rs:35:4:35:24 | ...::write::<...> | provenance | MaD:2 Sink:MaD:2 |
25-
| deallocation.rs:54:23:54:24 | m2 | deallocation.rs:57:14:57:15 | m2 | provenance | |
26-
| deallocation.rs:54:23:54:24 | m2 | deallocation.rs:58:14:58:15 | m2 | provenance | |
27-
| deallocation.rs:54:23:54:24 | m2 | deallocation.rs:63:6:63:7 | m2 | provenance | |
28-
| deallocation.rs:54:23:54:24 | m2 | deallocation.rs:64:6:64:7 | m2 | provenance | |
29-
| deallocation.rs:54:23:54:24 | m2 | deallocation.rs:66:32:66:33 | m2 | provenance | |
30-
| deallocation.rs:66:32:66:33 | m2 | deallocation.rs:66:4:66:30 | ...::write::<...> | provenance | MaD:2 Sink:MaD:2 |
31-
| deallocation.rs:81:14:81:19 | my_ptr | deallocation.rs:84:13:84:18 | my_ptr | provenance | |
32-
| deallocation.rs:92:6:92:7 | p1 | deallocation.rs:99:14:99:15 | p1 | provenance | |
33-
| deallocation.rs:92:23:92:40 | ...::dangling | deallocation.rs:92:23:92:42 | ...::dangling(...) | provenance | Src:MaD:3 MaD:3 |
34-
| deallocation.rs:92:23:92:42 | ...::dangling(...) | deallocation.rs:92:6:92:7 | p1 | provenance | |
35-
| deallocation.rs:93:6:93:7 | p2 | deallocation.rs:100:14:100:15 | p2 | provenance | |
36-
| deallocation.rs:93:21:93:42 | ...::dangling_mut | deallocation.rs:93:21:93:44 | ...::dangling_mut(...) | provenance | Src:MaD:4 MaD:4 |
37-
| deallocation.rs:93:21:93:44 | ...::dangling_mut(...) | deallocation.rs:93:6:93:7 | p2 | provenance | |
38-
| deallocation.rs:94:6:94:7 | p3 | deallocation.rs:101:14:101:15 | p3 | provenance | |
39-
| deallocation.rs:94:23:94:36 | ...::null | deallocation.rs:94:23:94:38 | ...::null(...) | provenance | Src:MaD:5 MaD:5 |
40-
| deallocation.rs:94:23:94:38 | ...::null(...) | deallocation.rs:94:6:94:7 | p3 | provenance | |
41-
| deallocation.rs:145:27:145:28 | p1 | deallocation.rs:148:14:148:15 | p1 | provenance | |
42-
| deallocation.rs:173:27:173:29 | ptr | deallocation.rs:179:18:179:20 | ptr | provenance | |
18+
| deallocation.rs:20:23:20:24 | m1 | deallocation.rs:26:15:26:16 | m1 | provenance | |
19+
| deallocation.rs:20:23:20:24 | m1 | deallocation.rs:33:35:33:36 | m1 | provenance | |
20+
| deallocation.rs:20:23:20:24 | m1 | deallocation.rs:40:6:40:7 | m1 | provenance | |
21+
| deallocation.rs:20:23:20:24 | m1 | deallocation.rs:45:27:45:28 | m1 | provenance | |
22+
| deallocation.rs:33:35:33:36 | m1 | deallocation.rs:33:14:33:33 | ...::read::<...> | provenance | MaD:1 Sink:MaD:1 |
23+
| deallocation.rs:45:27:45:28 | m1 | deallocation.rs:45:5:45:25 | ...::write::<...> | provenance | MaD:2 Sink:MaD:2 |
24+
| deallocation.rs:66:23:66:24 | m2 | deallocation.rs:72:16:72:17 | m2 | provenance | |
25+
| deallocation.rs:66:23:66:24 | m2 | deallocation.rs:77:16:77:17 | m2 | provenance | |
26+
| deallocation.rs:66:23:66:24 | m2 | deallocation.rs:82:7:82:8 | m2 | provenance | |
27+
| deallocation.rs:66:23:66:24 | m2 | deallocation.rs:86:7:86:8 | m2 | provenance | |
28+
| deallocation.rs:66:23:66:24 | m2 | deallocation.rs:91:33:91:34 | m2 | provenance | |
29+
| deallocation.rs:91:33:91:34 | m2 | deallocation.rs:91:5:91:31 | ...::write::<...> | provenance | MaD:2 Sink:MaD:2 |
30+
| deallocation.rs:108:14:108:19 | my_ptr | deallocation.rs:111:13:111:18 | my_ptr | provenance | |
31+
| deallocation.rs:119:6:119:7 | p1 | deallocation.rs:126:14:126:15 | p1 | provenance | |
32+
| deallocation.rs:119:23:119:40 | ...::dangling | deallocation.rs:119:23:119:42 | ...::dangling(...) | provenance | Src:MaD:3 MaD:3 |
33+
| deallocation.rs:119:23:119:42 | ...::dangling(...) | deallocation.rs:119:6:119:7 | p1 | provenance | |
34+
| deallocation.rs:120:6:120:7 | p2 | deallocation.rs:127:14:127:15 | p2 | provenance | |
35+
| deallocation.rs:120:21:120:42 | ...::dangling_mut | deallocation.rs:120:21:120:44 | ...::dangling_mut(...) | provenance | Src:MaD:4 MaD:4 |
36+
| deallocation.rs:120:21:120:44 | ...::dangling_mut(...) | deallocation.rs:120:6:120:7 | p2 | provenance | |
37+
| deallocation.rs:121:6:121:7 | p3 | deallocation.rs:128:14:128:15 | p3 | provenance | |
38+
| deallocation.rs:121:23:121:36 | ...::null | deallocation.rs:121:23:121:38 | ...::null(...) | provenance | Src:MaD:5 MaD:5 |
39+
| deallocation.rs:121:23:121:38 | ...::null(...) | deallocation.rs:121:6:121:7 | p3 | provenance | |
40+
| deallocation.rs:172:27:172:28 | p1 | deallocation.rs:176:15:176:16 | p1 | provenance | |
41+
| deallocation.rs:204:27:204:29 | ptr | deallocation.rs:210:18:210:20 | ptr | provenance | |
4342
models
4443
| 1 | Sink: lang:core; crate::ptr::read; pointer-access; Argument[0] |
4544
| 2 | Sink: lang:core; crate::ptr::write; pointer-access; Argument[0] |
@@ -48,36 +47,35 @@ models
4847
| 5 | Source: lang:core; crate::ptr::null; pointer-invalidate; ReturnValue |
4948
nodes
5049
| deallocation.rs:20:23:20:24 | m1 | semmle.label | m1 |
51-
| deallocation.rs:23:13:23:14 | m1 | semmle.label | m1 |
52-
| deallocation.rs:25:12:25:31 | ...::read::<...> | semmle.label | ...::read::<...> |
53-
| deallocation.rs:25:33:25:34 | m1 | semmle.label | m1 |
54-
| deallocation.rs:33:5:33:6 | m1 | semmle.label | m1 |
55-
| deallocation.rs:33:5:33:6 | m1 | semmle.label | m1 |
56-
| deallocation.rs:35:4:35:24 | ...::write::<...> | semmle.label | ...::write::<...> |
57-
| deallocation.rs:35:26:35:27 | m1 | semmle.label | m1 |
58-
| deallocation.rs:54:23:54:24 | m2 | semmle.label | m2 |
59-
| deallocation.rs:57:14:57:15 | m2 | semmle.label | m2 |
60-
| deallocation.rs:58:14:58:15 | m2 | semmle.label | m2 |
61-
| deallocation.rs:63:6:63:7 | m2 | semmle.label | m2 |
62-
| deallocation.rs:64:6:64:7 | m2 | semmle.label | m2 |
63-
| deallocation.rs:66:4:66:30 | ...::write::<...> | semmle.label | ...::write::<...> |
64-
| deallocation.rs:66:32:66:33 | m2 | semmle.label | m2 |
65-
| deallocation.rs:81:14:81:19 | my_ptr | semmle.label | my_ptr |
66-
| deallocation.rs:84:13:84:18 | my_ptr | semmle.label | my_ptr |
67-
| deallocation.rs:92:6:92:7 | p1 | semmle.label | p1 |
68-
| deallocation.rs:92:23:92:40 | ...::dangling | semmle.label | ...::dangling |
69-
| deallocation.rs:92:23:92:42 | ...::dangling(...) | semmle.label | ...::dangling(...) |
70-
| deallocation.rs:93:6:93:7 | p2 | semmle.label | p2 |
71-
| deallocation.rs:93:21:93:42 | ...::dangling_mut | semmle.label | ...::dangling_mut |
72-
| deallocation.rs:93:21:93:44 | ...::dangling_mut(...) | semmle.label | ...::dangling_mut(...) |
73-
| deallocation.rs:94:6:94:7 | p3 | semmle.label | p3 |
74-
| deallocation.rs:94:23:94:36 | ...::null | semmle.label | ...::null |
75-
| deallocation.rs:94:23:94:38 | ...::null(...) | semmle.label | ...::null(...) |
76-
| deallocation.rs:99:14:99:15 | p1 | semmle.label | p1 |
77-
| deallocation.rs:100:14:100:15 | p2 | semmle.label | p2 |
78-
| deallocation.rs:101:14:101:15 | p3 | semmle.label | p3 |
79-
| deallocation.rs:145:27:145:28 | p1 | semmle.label | p1 |
80-
| deallocation.rs:148:14:148:15 | p1 | semmle.label | p1 |
81-
| deallocation.rs:173:27:173:29 | ptr | semmle.label | ptr |
82-
| deallocation.rs:179:18:179:20 | ptr | semmle.label | ptr |
50+
| deallocation.rs:26:15:26:16 | m1 | semmle.label | m1 |
51+
| deallocation.rs:33:14:33:33 | ...::read::<...> | semmle.label | ...::read::<...> |
52+
| deallocation.rs:33:35:33:36 | m1 | semmle.label | m1 |
53+
| deallocation.rs:40:6:40:7 | m1 | semmle.label | m1 |
54+
| deallocation.rs:45:5:45:25 | ...::write::<...> | semmle.label | ...::write::<...> |
55+
| deallocation.rs:45:27:45:28 | m1 | semmle.label | m1 |
56+
| deallocation.rs:66:23:66:24 | m2 | semmle.label | m2 |
57+
| deallocation.rs:72:16:72:17 | m2 | semmle.label | m2 |
58+
| deallocation.rs:77:16:77:17 | m2 | semmle.label | m2 |
59+
| deallocation.rs:82:7:82:8 | m2 | semmle.label | m2 |
60+
| deallocation.rs:86:7:86:8 | m2 | semmle.label | m2 |
61+
| deallocation.rs:91:5:91:31 | ...::write::<...> | semmle.label | ...::write::<...> |
62+
| deallocation.rs:91:33:91:34 | m2 | semmle.label | m2 |
63+
| deallocation.rs:108:14:108:19 | my_ptr | semmle.label | my_ptr |
64+
| deallocation.rs:111:13:111:18 | my_ptr | semmle.label | my_ptr |
65+
| deallocation.rs:119:6:119:7 | p1 | semmle.label | p1 |
66+
| deallocation.rs:119:23:119:40 | ...::dangling | semmle.label | ...::dangling |
67+
| deallocation.rs:119:23:119:42 | ...::dangling(...) | semmle.label | ...::dangling(...) |
68+
| deallocation.rs:120:6:120:7 | p2 | semmle.label | p2 |
69+
| deallocation.rs:120:21:120:42 | ...::dangling_mut | semmle.label | ...::dangling_mut |
70+
| deallocation.rs:120:21:120:44 | ...::dangling_mut(...) | semmle.label | ...::dangling_mut(...) |
71+
| deallocation.rs:121:6:121:7 | p3 | semmle.label | p3 |
72+
| deallocation.rs:121:23:121:36 | ...::null | semmle.label | ...::null |
73+
| deallocation.rs:121:23:121:38 | ...::null(...) | semmle.label | ...::null(...) |
74+
| deallocation.rs:126:14:126:15 | p1 | semmle.label | p1 |
75+
| deallocation.rs:127:14:127:15 | p2 | semmle.label | p2 |
76+
| deallocation.rs:128:14:128:15 | p3 | semmle.label | p3 |
77+
| deallocation.rs:172:27:172:28 | p1 | semmle.label | p1 |
78+
| deallocation.rs:176:15:176:16 | p1 | semmle.label | p1 |
79+
| deallocation.rs:204:27:204:29 | ptr | semmle.label | ptr |
80+
| deallocation.rs:210:18:210:20 | ptr | semmle.label | ptr |
8381
subpaths

0 commit comments

Comments
 (0)