Merge pull request #11152 from github/redsun82/swift-bitwise-test

Swift: add bitwise ops to `PrintAst` test
This commit is contained in:
AlexDenisov
2022-11-08 10:25:48 +01:00
committed by GitHub
4 changed files with 84 additions and 2 deletions

View File

@@ -229,3 +229,30 @@
| expressions.swift:154:22:154:56 | \\...[...] | KeyPathApplicationExpr |
| expressions.swift:154:33:154:33 | keyPathB | DeclRefExpr |
| expressions.swift:154:52:154:55 | #keyPath(...) | KeyPathExpr |
| expressions.swift:158:3:158:3 | _ | DiscardAssignmentExpr |
| expressions.swift:158:3:158:8 | ... = ... | AssignExpr |
| expressions.swift:158:7:158:7 | .~(_:) | MethodRefExpr |
| expressions.swift:158:7:158:7 | Int.Type | TypeExpr |
| expressions.swift:158:7:158:8 | call to ~(_:) | PrefixUnaryExpr |
| expressions.swift:158:8:158:8 | 1 | IntegerLiteralExpr |
| expressions.swift:159:3:159:3 | _ | DiscardAssignmentExpr |
| expressions.swift:159:3:159:11 | ... = ... | AssignExpr |
| expressions.swift:159:7:159:7 | 1 | IntegerLiteralExpr |
| expressions.swift:159:7:159:11 | ... .&(_:_:) ... | BinaryExpr |
| expressions.swift:159:9:159:9 | .&(_:_:) | MethodRefExpr |
| expressions.swift:159:9:159:9 | Int.Type | TypeExpr |
| expressions.swift:159:11:159:11 | 2 | IntegerLiteralExpr |
| expressions.swift:160:3:160:3 | _ | DiscardAssignmentExpr |
| expressions.swift:160:3:160:11 | ... = ... | AssignExpr |
| expressions.swift:160:7:160:7 | 1 | IntegerLiteralExpr |
| expressions.swift:160:7:160:11 | ... .\|(_:_:) ... | BinaryExpr |
| expressions.swift:160:9:160:9 | .\|(_:_:) | MethodRefExpr |
| expressions.swift:160:9:160:9 | Int.Type | TypeExpr |
| expressions.swift:160:11:160:11 | 2 | IntegerLiteralExpr |
| expressions.swift:161:3:161:3 | _ | DiscardAssignmentExpr |
| expressions.swift:161:3:161:11 | ... = ... | AssignExpr |
| expressions.swift:161:7:161:7 | 1 | IntegerLiteralExpr |
| expressions.swift:161:7:161:11 | ... .^(_:_:) ... | BinaryExpr |
| expressions.swift:161:9:161:9 | .^(_:_:) | MethodRefExpr |
| expressions.swift:161:9:161:9 | Int.Type | TypeExpr |
| expressions.swift:161:11:161:11 | 2 | IntegerLiteralExpr |

View File

@@ -152,4 +152,11 @@ func test(a : A, keyPathInt : WritableKeyPath<A, Int>, keyPathB : WritableKeyPat
var apply_keyPathInt = a[keyPath: keyPathInt]
var apply_keyPathB = a[keyPath: keyPathB]
var nested_apply = a[keyPath: keyPathB][keyPath: \B.x]
}
}
func bitwise() {
_ = ~1
_ = 1 & 2
_ = 1 | 2
_ = 1 ^ 2
}

View File

@@ -4338,6 +4338,47 @@ expressions.swift:
# 154| getPattern(0): [NamedPattern] nested_apply
# 154| getElement(5): [ConcreteVarDecl] nested_apply
# 154| Type = Int
# 157| [ConcreteFuncDecl] bitwise()
# 157| InterfaceType = () -> ()
# 157| getBody(): [BraceStmt] { ... }
# 158| getElement(0): [AssignExpr] ... = ...
# 158| getDest(): [DiscardAssignmentExpr] _
# 158| getSource(): [PrefixUnaryExpr] call to ~(_:)
# 158| getFunction(): [MethodRefExpr] .~(_:)
# 158| getBase(): [TypeExpr] Int.Type
# 158| getTypeRepr(): [TypeRepr] Int
# 158| getArgument(0): [Argument] : 1
# 158| getExpr(): [IntegerLiteralExpr] 1
# 159| getElement(1): [AssignExpr] ... = ...
# 159| getDest(): [DiscardAssignmentExpr] _
# 159| getSource(): [BinaryExpr] ... .&(_:_:) ...
# 159| getFunction(): [MethodRefExpr] .&(_:_:)
# 159| getBase(): [TypeExpr] Int.Type
# 159| getTypeRepr(): [TypeRepr] Int
# 159| getArgument(0): [Argument] : 1
# 159| getExpr(): [IntegerLiteralExpr] 1
# 159| getArgument(1): [Argument] : 2
# 159| getExpr(): [IntegerLiteralExpr] 2
# 160| getElement(2): [AssignExpr] ... = ...
# 160| getDest(): [DiscardAssignmentExpr] _
# 160| getSource(): [BinaryExpr] ... .|(_:_:) ...
# 160| getFunction(): [MethodRefExpr] .|(_:_:)
# 160| getBase(): [TypeExpr] Int.Type
# 160| getTypeRepr(): [TypeRepr] Int
# 160| getArgument(0): [Argument] : 1
# 160| getExpr(): [IntegerLiteralExpr] 1
# 160| getArgument(1): [Argument] : 2
# 160| getExpr(): [IntegerLiteralExpr] 2
# 161| getElement(3): [AssignExpr] ... = ...
# 161| getDest(): [DiscardAssignmentExpr] _
# 161| getSource(): [BinaryExpr] ... .^(_:_:) ...
# 161| getFunction(): [MethodRefExpr] .^(_:_:)
# 161| getBase(): [TypeExpr] Int.Type
# 161| getTypeRepr(): [TypeRepr] Int
# 161| getArgument(0): [Argument] : 1
# 161| getExpr(): [IntegerLiteralExpr] 1
# 161| getArgument(1): [Argument] : 2
# 161| getExpr(): [IntegerLiteralExpr] 2
patterns.swift:
# 1| [ConcreteFuncDecl] basic_patterns()
# 1| InterfaceType = () -> ()

View File

@@ -152,4 +152,11 @@ func test(a : A, keyPathInt : WritableKeyPath<A, Int>, keyPathB : WritableKeyPat
var apply_keyPathInt = a[keyPath: keyPathInt]
var apply_keyPathB = a[keyPath: keyPathB]
var nested_apply = a[keyPath: keyPathB][keyPath: \B.x]
}
}
func bitwise() {
_ = ~1
_ = 1 & 2
_ = 1 | 2
_ = 1 ^ 2
}