File tree 2 files changed +10
-1
lines changed
2 files changed +10
-1
lines changed Original file line number Diff line number Diff line change @@ -4198,7 +4198,8 @@ namespace {
4198
4198
return;
4199
4199
4200
4200
// FIXME: support C functions imported as members.
4201
- if (result->getImportAsMemberStatus().isImportAsMember() &&
4201
+ if (!isClangNamespace(result->getDeclContext()) &&
4202
+ result->getImportAsMemberStatus().isImportAsMember() &&
4202
4203
!isa<clang::CXXMethodDecl, clang::ObjCMethodDecl>(decl))
4203
4204
return;
4204
4205
Original file line number Diff line number Diff line change @@ -109,6 +109,12 @@ struct SWIFT_NONESCAPABLE AggregateView {
109
109
const int * member;
110
110
} ;
111
111
112
+ namespace NS {
113
+ View getView( const Owner& owner [ [ clang: : lifetimebound] ] ) {
114
+ return View ( & owner. data) ;
115
+ }
116
+ }
117
+
112
118
// CHECK: sil [clang makeOwner] {{.*}}: $@convention(c) () -> Owner
113
119
// CHECK: sil [clang getView] {{.*}} : $@convention(c) (@in_guaranteed Owner) -> @lifetime(borrow 0) @owned View
114
120
// CHECK: sil [clang getViewFromFirst] {{.*}} : $@convention(c) (@in_guaranteed Owner, @in_guaranteed Owner) -> @lifetime(borrow 0) @owned View
@@ -123,6 +129,7 @@ struct SWIFT_NONESCAPABLE AggregateView {
123
129
// CHECK: sil [clang getCaptureView] {{.*}} : $@convention(c) (@in_guaranteed Owner) -> @lifetime(borrow 0) @owned CaptureView
124
130
// CHECK: sil [clang CaptureView.captureView] {{.*}} : $@convention(cxx_method) (View, @lifetime(copy 0) @inout CaptureView) -> ()
125
131
// CHECK: sil [clang CaptureView.handOut] {{.*}} : $@convention(cxx_method) (@lifetime(copy 1) @inout View, @in_guaranteed CaptureView) -> ()
132
+ // CHECK: sil [clang NS.getView] {{.*}} : $@convention(c) (@in_guaranteed Owner) -> @lifetime(borrow 0) @owned View
126
133
127
134
//--- test.swift
128
135
@@ -144,6 +151,7 @@ public func test() {
144
151
var cv = getCaptureView ( o)
145
152
cv. captureView ( v1)
146
153
cv. handOut ( & v1)
154
+ var _ = NS . getView ( o)
147
155
}
148
156
149
157
public func test2( _ x: AggregateView ) {
You can’t perform that action at this time.
0 commit comments