Skip to content

Commit f2d9393

Browse files
committed
Swift: Only test local-flow step relations for nodes with proper location information.
1 parent 80bf22c commit f2d9393

File tree

4 files changed

+148
-347
lines changed

4 files changed

+148
-347
lines changed

swift/ql/test/library-tests/dataflow/dataflow/LocalFlow.expected

Lines changed: 0 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -1,63 +1,3 @@
1-
| file://:0:0:0:0 | &... | test.swift:242:9:242:9 | self[return] |
2-
| file://:0:0:0:0 | &... | test.swift:242:9:242:9 | self[return] |
3-
| file://:0:0:0:0 | (no string representation) | file://:0:0:0:0 | WriteDef |
4-
| file://:0:0:0:0 | (no string representation) | file://:0:0:0:0 | WriteDef |
5-
| file://:0:0:0:0 | (no string representation) | file://:0:0:0:0 | WriteDef |
6-
| file://:0:0:0:0 | (no string representation) | file://:0:0:0:0 | WriteDef |
7-
| file://:0:0:0:0 | (no string representation) | file://:0:0:0:0 | WriteDef |
8-
| file://:0:0:0:0 | (no string representation) | file://:0:0:0:0 | WriteDef |
9-
| file://:0:0:0:0 | (no string representation) | file://:0:0:0:0 | WriteDef |
10-
| file://:0:0:0:0 | (no string representation) | file://:0:0:0:0 | WriteDef |
11-
| file://:0:0:0:0 | (no string representation) | file://:0:0:0:0 | WriteDef |
12-
| file://:0:0:0:0 | (no string representation) | file://:0:0:0:0 | WriteDef |
13-
| file://:0:0:0:0 | (no string representation) | file://:0:0:0:0 | WriteDef |
14-
| file://:0:0:0:0 | (no string representation) | file://:0:0:0:0 | WriteDef |
15-
| file://:0:0:0:0 | (no string representation) | file://:0:0:0:0 | WriteDef |
16-
| file://:0:0:0:0 | (no string representation) | file://:0:0:0:0 | WriteDef |
17-
| file://:0:0:0:0 | (no string representation) | file://:0:0:0:0 | WriteDef |
18-
| file://:0:0:0:0 | .a | file://:0:0:0:0 | &... |
19-
| file://:0:0:0:0 | .source_value | file://:0:0:0:0 | &... |
20-
| file://:0:0:0:0 | .wrappedValue | file://:0:0:0:0 | &... |
21-
| file://:0:0:0:0 | .x | file://:0:0:0:0 | &... |
22-
| file://:0:0:0:0 | WriteDef | file://:0:0:0:0 | self[return] |
23-
| file://:0:0:0:0 | WriteDef | file://:0:0:0:0 | self[return] |
24-
| file://:0:0:0:0 | WriteDef | file://:0:0:0:0 | self[return] |
25-
| file://:0:0:0:0 | WriteDef | file://:0:0:0:0 | self[return] |
26-
| file://:0:0:0:0 | WriteDef | file://:0:0:0:0 | self[return] |
27-
| file://:0:0:0:0 | WriteDef | file://:0:0:0:0 | self[return] |
28-
| file://:0:0:0:0 | WriteDef | file://:0:0:0:0 | self[return] |
29-
| file://:0:0:0:0 | WriteDef | file://:0:0:0:0 | self[return] |
30-
| file://:0:0:0:0 | WriteDef | file://:0:0:0:0 | self[return] |
31-
| file://:0:0:0:0 | WriteDef | file://:0:0:0:0 | self[return] |
32-
| file://:0:0:0:0 | WriteDef | file://:0:0:0:0 | self[return] |
33-
| file://:0:0:0:0 | WriteDef | file://:0:0:0:0 | self[return] |
34-
| file://:0:0:0:0 | WriteDef | file://:0:0:0:0 | self[return] |
35-
| file://:0:0:0:0 | WriteDef | file://:0:0:0:0 | self[return] |
36-
| file://:0:0:0:0 | WriteDef | file://:0:0:0:0 | self[return] |
37-
| file://:0:0:0:0 | [post] &... | test.swift:242:9:242:9 | self[return] |
38-
| file://:0:0:0:0 | [post] &... | test.swift:242:9:242:9 | self[return] |
39-
| file://:0:0:0:0 | [post] self | file://:0:0:0:0 | self |
40-
| file://:0:0:0:0 | [post] self | file://:0:0:0:0 | self |
41-
| file://:0:0:0:0 | [post] self | test.swift:163:7:163:7 | self[return] |
42-
| file://:0:0:0:0 | [post] self | test.swift:163:7:163:7 | self[return] |
43-
| file://:0:0:0:0 | [post] self | test.swift:163:7:163:7 | self[return] |
44-
| file://:0:0:0:0 | [post] self | test.swift:185:7:185:7 | self[return] |
45-
| file://:0:0:0:0 | [post] self | test.swift:185:7:185:7 | self[return] |
46-
| file://:0:0:0:0 | [post] self | test.swift:185:7:185:7 | self[return] |
47-
| file://:0:0:0:0 | [post] self | test.swift:223:7:223:7 | self[return] |
48-
| file://:0:0:0:0 | [post] self | test.swift:242:9:242:9 | self[return] |
49-
| file://:0:0:0:0 | self | file://:0:0:0:0 | &... |
50-
| file://:0:0:0:0 | self | file://:0:0:0:0 | &... |
51-
| file://:0:0:0:0 | self | file://:0:0:0:0 | self |
52-
| file://:0:0:0:0 | self | file://:0:0:0:0 | self |
53-
| file://:0:0:0:0 | self | test.swift:163:7:163:7 | self[return] |
54-
| file://:0:0:0:0 | self | test.swift:163:7:163:7 | self[return] |
55-
| file://:0:0:0:0 | self | test.swift:163:7:163:7 | self[return] |
56-
| file://:0:0:0:0 | self | test.swift:185:7:185:7 | self[return] |
57-
| file://:0:0:0:0 | self | test.swift:185:7:185:7 | self[return] |
58-
| file://:0:0:0:0 | self | test.swift:185:7:185:7 | self[return] |
59-
| file://:0:0:0:0 | self | test.swift:223:7:223:7 | self[return] |
60-
| file://:0:0:0:0 | self | test.swift:242:9:242:9 | self[return] |
611
| test.swift:6:9:6:13 | WriteDef | test.swift:7:15:7:15 | t1 |
622
| test.swift:6:19:6:26 | call to source() | test.swift:6:9:6:13 | WriteDef |
633
| test.swift:7:15:7:15 | t1 | test.swift:8:10:8:10 | t1 |
@@ -150,10 +90,6 @@
15090
| test.swift:154:10:154:13 | i | test.swift:155:19:155:19 | i |
15191
| test.swift:157:5:157:5 | lambdaSink | test.swift:159:5:159:5 | lambdaSink |
15292
| test.swift:162:7:162:7 | self | test.swift:162:7:162:7 | self[return] |
153-
| test.swift:163:7:163:7 | self | file://:0:0:0:0 | self |
154-
| test.swift:163:7:163:7 | self | file://:0:0:0:0 | self |
155-
| test.swift:163:7:163:7 | self | file://:0:0:0:0 | self |
156-
| test.swift:163:7:163:7 | value | file://:0:0:0:0 | value |
15793
| test.swift:165:3:165:3 | self | test.swift:166:5:166:5 | self |
15894
| test.swift:166:5:166:5 | [post] self | test.swift:165:3:167:3 | self[return] |
15995
| test.swift:166:5:166:5 | self | test.swift:165:3:167:3 | self[return] |
@@ -169,10 +105,6 @@
169105
| test.swift:180:3:180:3 | [post] a | test.swift:181:13:181:13 | a |
170106
| test.swift:180:3:180:3 | a | test.swift:181:13:181:13 | a |
171107
| test.swift:184:7:184:7 | self | test.swift:184:7:184:7 | self[return] |
172-
| test.swift:185:7:185:7 | self | file://:0:0:0:0 | self |
173-
| test.swift:185:7:185:7 | self | file://:0:0:0:0 | self |
174-
| test.swift:185:7:185:7 | self | file://:0:0:0:0 | self |
175-
| test.swift:185:7:185:7 | value | file://:0:0:0:0 | value |
176108
| test.swift:187:3:187:3 | self | test.swift:188:5:188:5 | self |
177109
| test.swift:188:5:188:5 | [post] self | test.swift:187:3:189:3 | self[return] |
178110
| test.swift:188:5:188:5 | self | test.swift:187:3:189:3 | self[return] |
@@ -198,7 +130,6 @@
198130
| test.swift:218:3:218:3 | b | test.swift:219:13:219:13 | b |
199131
| test.swift:222:7:222:7 | self | test.swift:222:7:222:7 | self[return] |
200132
| test.swift:222:7:222:7 | self | test.swift:222:7:222:7 | self[return] |
201-
| test.swift:223:7:223:7 | self | file://:0:0:0:0 | self |
202133
| test.swift:224:5:224:5 | self | test.swift:224:5:226:5 | self[return] |
203134
| test.swift:227:5:227:5 | self | test.swift:227:5:229:5 | self[return] |
204135
| test.swift:234:7:234:7 | WriteDef | test.swift:235:13:235:13 | a |
@@ -207,14 +138,9 @@
207138
| test.swift:235:13:235:13 | a | test.swift:237:3:237:3 | a |
208139
| test.swift:237:3:237:3 | [post] a | test.swift:238:13:238:13 | a |
209140
| test.swift:237:3:237:3 | a | test.swift:238:13:238:13 | a |
210-
| test.swift:242:9:242:9 | self | file://:0:0:0:0 | self |
211-
| test.swift:242:9:242:9 | self | file://:0:0:0:0 | self |
212-
| test.swift:242:9:242:9 | self | file://:0:0:0:0 | self |
213-
| test.swift:242:9:242:9 | value | file://:0:0:0:0 | value |
214141
| test.swift:243:9:243:9 | self | test.swift:243:18:243:18 | self |
215142
| test.swift:243:18:243:18 | [post] self | test.swift:243:9:243:42 | self[return] |
216143
| test.swift:243:18:243:18 | self | test.swift:243:9:243:42 | self[return] |
217144
| test.swift:246:5:246:5 | self | test.swift:247:9:247:9 | self |
218145
| test.swift:247:9:247:9 | [post] self | test.swift:246:5:248:5 | self[return] |
219146
| test.swift:247:9:247:9 | self | test.swift:246:5:248:5 | self[return] |
220-
| test.swift:252:23:252:23 | value | file://:0:0:0:0 | value |

swift/ql/test/library-tests/dataflow/dataflow/LocalFlow.ql

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,8 @@ import swift
22
import codeql.swift.dataflow.DataFlow
33

44
from DataFlow::Node pred, DataFlow::Node succ
5-
where DataFlow::localFlowStep(pred, succ)
5+
where
6+
DataFlow::localFlowStep(pred, succ) and
7+
not pred.getLocation() instanceof UnknownLocation and
8+
not succ.getLocation() instanceof UnknownLocation
69
select pred, succ

0 commit comments

Comments
 (0)