File tree Expand file tree Collapse file tree 4 files changed +19
-10
lines changed Expand file tree Collapse file tree 4 files changed +19
-10
lines changed Original file line number Diff line number Diff line change @@ -2732,10 +2732,11 @@ BridgedTupleTypeRepr BridgedTupleTypeRepr_createParsed(
2732
2732
BridgedASTContext cContext, BridgedArrayRef elements,
2733
2733
BridgedSourceLoc cLParenLoc, BridgedSourceLoc cRParenLoc);
2734
2734
2735
- SWIFT_NAME (" BridgedNamedOpaqueReturnTypeRepr.createParsed(_:base:)" )
2736
- BridgedNamedOpaqueReturnTypeRepr
2737
- BridgedNamedOpaqueReturnTypeRepr_createParsed(BridgedASTContext cContext,
2738
- BridgedTypeRepr baseTy);
2735
+ SWIFT_NAME (
2736
+ " BridgedNamedOpaqueReturnTypeRepr.createParsed(_:base:genericParamList:)" )
2737
+ BridgedNamedOpaqueReturnTypeRepr BridgedNamedOpaqueReturnTypeRepr_createParsed(
2738
+ BridgedASTContext cContext, BridgedTypeRepr baseTy,
2739
+ BridgedGenericParamList genericParams);
2739
2740
2740
2741
SWIFT_NAME (" BridgedOpaqueReturnTypeRepr.createParsed(_:someKeywordLoc:base:)" )
2741
2742
BridgedOpaqueReturnTypeRepr
Original file line number Diff line number Diff line change @@ -293,11 +293,12 @@ BridgedFunctionTypeRepr BridgedFunctionTypeRepr_createParsed(
293
293
resultType.unbridged ());
294
294
}
295
295
296
- BridgedNamedOpaqueReturnTypeRepr
297
- BridgedNamedOpaqueReturnTypeRepr_createParsed ( BridgedASTContext cContext,
298
- BridgedTypeRepr baseTy ) {
296
+ BridgedNamedOpaqueReturnTypeRepr BridgedNamedOpaqueReturnTypeRepr_createParsed (
297
+ BridgedASTContext cContext, BridgedTypeRepr baseTy ,
298
+ BridgedGenericParamList genericParams ) {
299
299
ASTContext &context = cContext.unbridged ();
300
- return new (context) NamedOpaqueReturnTypeRepr (baseTy.unbridged (), nullptr );
300
+ return new (context)
301
+ NamedOpaqueReturnTypeRepr (baseTy.unbridged (), genericParams.unbridged ());
301
302
}
302
303
303
304
BridgedOpaqueReturnTypeRepr
Original file line number Diff line number Diff line change @@ -266,8 +266,9 @@ extension ASTGenVisitor {
266
266
}
267
267
268
268
func generate( namedOpaqueReturnType node: NamedOpaqueReturnTypeSyntax ) -> BridgedNamedOpaqueReturnTypeRepr {
269
+ let genericParams = self . generate ( genericParameterClause: node. genericParameterClause)
269
270
let baseTy = generate ( type: node. type)
270
- return . createParsed( self . ctx, base: baseTy)
271
+ return . createParsed( self . ctx, base: baseTy, genericParamList : genericParams )
271
272
}
272
273
273
274
func generate( someOrAnyType node: SomeOrAnyTypeSyntax ) -> BridgedTypeRepr {
Original file line number Diff line number Diff line change 1
1
// RUN: %empty-directory(%t)
2
2
3
3
// RUN: %target-swift-frontend-dump-parse -enable-experimental-feature ParserASTGen \
4
+ // RUN: -enable-experimental-feature NamedOpaqueTypes \
4
5
// RUN: | %sanitize-address > %t/astgen.ast
5
6
// RUN: %target-swift-frontend-dump-parse \
7
+ // RUN: -enable-experimental-feature NamedOpaqueTypes \
6
8
// RUN: | %sanitize-address > %t/cpp-parser.ast
7
9
8
10
// RUN: %diff -u %t/astgen.ast %t/cpp-parser.ast
9
11
10
- // RUN: %target-typecheck-verify-swift -enable-experimental-feature ParserASTGen
12
+ // RUN: %target-typecheck-verify-swift -enable-experimental-feature ParserASTGen \
13
+ // RUN: -enable-experimental-feature NamedOpaqueTypes
11
14
12
15
// REQUIRES: swift_feature_ParserASTGen
16
+ // REQUIRES: swift_feature_NamedOpaqueTypes
13
17
14
18
// rdar://116686158
15
19
// UNSUPPORTED: asan
@@ -73,3 +77,5 @@ typealias TestSpecifierAndAttr<T> = (__owned @Sendable @escaping () async -> T)
73
77
74
78
let globalOptionalInt : _ ? = 42
75
79
let optionalIntArray : Array < _ > = [ 42 ]
80
+
81
+ func testNamedOpaqueReturnTy( ) -> < T > T { return ( ) }
You can’t perform that action at this time.
0 commit comments