File tree Expand file tree Collapse file tree 2 files changed +20
-3
lines changed Expand file tree Collapse file tree 2 files changed +20
-3
lines changed Original file line number Diff line number Diff line change @@ -1666,7 +1666,7 @@ class SolutionApplicationTarget {
1666
1666
return false ;
1667
1667
1668
1668
auto *wrappedVar = expression.propertyWrapper .wrappedVar ;
1669
- if (!wrappedVar || wrappedVar->isStatic ())
1669
+ if (!apply || ! wrappedVar || wrappedVar->isStatic ())
1670
1670
return false ;
1671
1671
1672
1672
return expression.propertyWrapper .innermostWrappedValueInit == apply;
Original file line number Diff line number Diff line change @@ -5,7 +5,7 @@ struct Transaction {
5
5
}
6
6
7
7
@propertyWrapper
8
- struct Wrapper < Value> {
8
+ struct WrapperWithClosureArg < Value> {
9
9
var wrappedValue : Value
10
10
11
11
init ( wrappedValue: Value ,
@@ -21,9 +21,26 @@ struct R_59685601 {
21
21
// CHECK-NEXT: property_wrapper_value_placeholder_expr implicit type='String'
22
22
// CHECK-NEXT: opaque_value_expr implicit type='String'
23
23
// CHECK-NEXT: string_literal_expr type='String'
24
- @Wrapper ( reset: { value, transaction in
24
+ @WrapperWithClosureArg ( reset: { value, transaction in
25
25
transaction. state = 10
26
26
} )
27
27
private var value = " hello "
28
28
}
29
29
30
+ @propertyWrapper
31
+ struct Wrapper < Value> {
32
+ var wrappedValue : Value
33
+ }
34
+
35
+ // CHECK-LABEL: struct_decl{{.*}}TestInitSubscript
36
+ struct TestInitSubscript {
37
+ enum Color : CaseIterable { case pink }
38
+
39
+ // CHECK: tuple_expr type='(wrappedValue: TestInitSubscript.Color)'
40
+ // CHECK: subscript_expr type='TestInitSubscript.Color'
41
+ // CHECK: paren_expr type='(Int)'
42
+ // CHECK-NOT: property_wrapper_value_placeholder_expr implicit type='Int'
43
+ // CHECK: integer_literal_expr type='Int'
44
+ @Wrapper ( wrappedValue: Color . allCases [ 0 ] )
45
+ var color : Color
46
+ }
You can’t perform that action at this time.
0 commit comments