Skip to content

Commit d184819

Browse files
authored
Merge pull request #11152 from github/redsun82/swift-bitwise-test
Swift: add bitwise ops to `PrintAst` test
2 parents 38abd38 + 072edad commit d184819

File tree

4 files changed

+84
-2
lines changed

4 files changed

+84
-2
lines changed

swift/ql/test/extractor-tests/expressions/all.expected

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -229,3 +229,30 @@
229229
| expressions.swift:154:22:154:56 | \\...[...] | KeyPathApplicationExpr |
230230
| expressions.swift:154:33:154:33 | keyPathB | DeclRefExpr |
231231
| expressions.swift:154:52:154:55 | #keyPath(...) | KeyPathExpr |
232+
| expressions.swift:158:3:158:3 | _ | DiscardAssignmentExpr |
233+
| expressions.swift:158:3:158:8 | ... = ... | AssignExpr |
234+
| expressions.swift:158:7:158:7 | .~(_:) | MethodRefExpr |
235+
| expressions.swift:158:7:158:7 | Int.Type | TypeExpr |
236+
| expressions.swift:158:7:158:8 | call to ~(_:) | PrefixUnaryExpr |
237+
| expressions.swift:158:8:158:8 | 1 | IntegerLiteralExpr |
238+
| expressions.swift:159:3:159:3 | _ | DiscardAssignmentExpr |
239+
| expressions.swift:159:3:159:11 | ... = ... | AssignExpr |
240+
| expressions.swift:159:7:159:7 | 1 | IntegerLiteralExpr |
241+
| expressions.swift:159:7:159:11 | ... .&(_:_:) ... | BinaryExpr |
242+
| expressions.swift:159:9:159:9 | .&(_:_:) | MethodRefExpr |
243+
| expressions.swift:159:9:159:9 | Int.Type | TypeExpr |
244+
| expressions.swift:159:11:159:11 | 2 | IntegerLiteralExpr |
245+
| expressions.swift:160:3:160:3 | _ | DiscardAssignmentExpr |
246+
| expressions.swift:160:3:160:11 | ... = ... | AssignExpr |
247+
| expressions.swift:160:7:160:7 | 1 | IntegerLiteralExpr |
248+
| expressions.swift:160:7:160:11 | ... .\|(_:_:) ... | BinaryExpr |
249+
| expressions.swift:160:9:160:9 | .\|(_:_:) | MethodRefExpr |
250+
| expressions.swift:160:9:160:9 | Int.Type | TypeExpr |
251+
| expressions.swift:160:11:160:11 | 2 | IntegerLiteralExpr |
252+
| expressions.swift:161:3:161:3 | _ | DiscardAssignmentExpr |
253+
| expressions.swift:161:3:161:11 | ... = ... | AssignExpr |
254+
| expressions.swift:161:7:161:7 | 1 | IntegerLiteralExpr |
255+
| expressions.swift:161:7:161:11 | ... .^(_:_:) ... | BinaryExpr |
256+
| expressions.swift:161:9:161:9 | .^(_:_:) | MethodRefExpr |
257+
| expressions.swift:161:9:161:9 | Int.Type | TypeExpr |
258+
| expressions.swift:161:11:161:11 | 2 | IntegerLiteralExpr |

swift/ql/test/extractor-tests/expressions/expressions.swift

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,4 +152,11 @@ func test(a : A, keyPathInt : WritableKeyPath<A, Int>, keyPathB : WritableKeyPat
152152
var apply_keyPathInt = a[keyPath: keyPathInt]
153153
var apply_keyPathB = a[keyPath: keyPathB]
154154
var nested_apply = a[keyPath: keyPathB][keyPath: \B.x]
155-
}
155+
}
156+
157+
func bitwise() {
158+
_ = ~1
159+
_ = 1 & 2
160+
_ = 1 | 2
161+
_ = 1 ^ 2
162+
}

swift/ql/test/library-tests/ast/PrintAst.expected

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4338,6 +4338,47 @@ expressions.swift:
43384338
# 154| getPattern(0): [NamedPattern] nested_apply
43394339
# 154| getElement(5): [ConcreteVarDecl] nested_apply
43404340
# 154| Type = Int
4341+
# 157| [ConcreteFuncDecl] bitwise()
4342+
# 157| InterfaceType = () -> ()
4343+
# 157| getBody(): [BraceStmt] { ... }
4344+
# 158| getElement(0): [AssignExpr] ... = ...
4345+
# 158| getDest(): [DiscardAssignmentExpr] _
4346+
# 158| getSource(): [PrefixUnaryExpr] call to ~(_:)
4347+
# 158| getFunction(): [MethodRefExpr] .~(_:)
4348+
# 158| getBase(): [TypeExpr] Int.Type
4349+
# 158| getTypeRepr(): [TypeRepr] Int
4350+
# 158| getArgument(0): [Argument] : 1
4351+
# 158| getExpr(): [IntegerLiteralExpr] 1
4352+
# 159| getElement(1): [AssignExpr] ... = ...
4353+
# 159| getDest(): [DiscardAssignmentExpr] _
4354+
# 159| getSource(): [BinaryExpr] ... .&(_:_:) ...
4355+
# 159| getFunction(): [MethodRefExpr] .&(_:_:)
4356+
# 159| getBase(): [TypeExpr] Int.Type
4357+
# 159| getTypeRepr(): [TypeRepr] Int
4358+
# 159| getArgument(0): [Argument] : 1
4359+
# 159| getExpr(): [IntegerLiteralExpr] 1
4360+
# 159| getArgument(1): [Argument] : 2
4361+
# 159| getExpr(): [IntegerLiteralExpr] 2
4362+
# 160| getElement(2): [AssignExpr] ... = ...
4363+
# 160| getDest(): [DiscardAssignmentExpr] _
4364+
# 160| getSource(): [BinaryExpr] ... .|(_:_:) ...
4365+
# 160| getFunction(): [MethodRefExpr] .|(_:_:)
4366+
# 160| getBase(): [TypeExpr] Int.Type
4367+
# 160| getTypeRepr(): [TypeRepr] Int
4368+
# 160| getArgument(0): [Argument] : 1
4369+
# 160| getExpr(): [IntegerLiteralExpr] 1
4370+
# 160| getArgument(1): [Argument] : 2
4371+
# 160| getExpr(): [IntegerLiteralExpr] 2
4372+
# 161| getElement(3): [AssignExpr] ... = ...
4373+
# 161| getDest(): [DiscardAssignmentExpr] _
4374+
# 161| getSource(): [BinaryExpr] ... .^(_:_:) ...
4375+
# 161| getFunction(): [MethodRefExpr] .^(_:_:)
4376+
# 161| getBase(): [TypeExpr] Int.Type
4377+
# 161| getTypeRepr(): [TypeRepr] Int
4378+
# 161| getArgument(0): [Argument] : 1
4379+
# 161| getExpr(): [IntegerLiteralExpr] 1
4380+
# 161| getArgument(1): [Argument] : 2
4381+
# 161| getExpr(): [IntegerLiteralExpr] 2
43414382
patterns.swift:
43424383
# 1| [ConcreteFuncDecl] basic_patterns()
43434384
# 1| InterfaceType = () -> ()

swift/ql/test/library-tests/ast/expressions.swift

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,4 +152,11 @@ func test(a : A, keyPathInt : WritableKeyPath<A, Int>, keyPathB : WritableKeyPat
152152
var apply_keyPathInt = a[keyPath: keyPathInt]
153153
var apply_keyPathB = a[keyPath: keyPathB]
154154
var nested_apply = a[keyPath: keyPathB][keyPath: \B.x]
155-
}
155+
}
156+
157+
func bitwise() {
158+
_ = ~1
159+
_ = 1 & 2
160+
_ = 1 | 2
161+
_ = 1 ^ 2
162+
}

0 commit comments

Comments
 (0)