Skip to content

Commit 65ac75f

Browse files
committed
[Sema]Set IsSending flag to subscript.getter if needed
1 parent 8ec8a12 commit 65ac75f

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

lib/AST/Decl.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10607,6 +10607,9 @@ AccessorDecl *AccessorDecl::createParsed(
1060710607
// The cloned parameter is implicit.
1060810608
param->setImplicit();
1060910609

10610+
if (subscriptParam->isSending())
10611+
param->setSending();
10612+
1061010613
newParams.push_back(param);
1061110614
}
1061210615
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
// RUN: %target-swift-frontend -emit-sil -swift-version 6 %s -o /dev/null -verify
2+
3+
class NonSendableKlass {}
4+
5+
protocol P {
6+
subscript(_: sending NonSendableKlass) -> sending NonSendableKlass { get }
7+
}
8+
9+
struct S: P {
10+
subscript(_: sending NonSendableKlass) -> sending NonSendableKlass { NonSendableKlass() }
11+
}

0 commit comments

Comments
 (0)