File tree Expand file tree Collapse file tree 3 files changed +24
-3
lines changed
validation-test/compiler_crashers_2_fixed Expand file tree Collapse file tree 3 files changed +24
-3
lines changed Original file line number Diff line number Diff line change @@ -1304,7 +1304,7 @@ class SubstFunctionTypeCollector {
1304
1304
if (origContextType->hasTypeParameter ()) {
1305
1305
origContextType = origSig->getGenericEnvironment ()
1306
1306
->mapTypeIntoContext (origContextType)
1307
- ->getCanonicalType (origSig );
1307
+ ->getCanonicalType ();
1308
1308
}
1309
1309
1310
1310
auto result = origContextType
Original file line number Diff line number Diff line change @@ -1623,7 +1623,7 @@ namespace {
1623
1623
for (auto field : D->getStoredProperties ()) {
1624
1624
auto substFieldType =
1625
1625
field->getInterfaceType ().subst (subMap)
1626
- ->getCanonicalType (D-> getGenericSignature () );
1626
+ ->getCanonicalType ();
1627
1627
1628
1628
// We are determining the recursive properties of the struct here,
1629
1629
// not the lowered types of the fields, so instead of lowering the
@@ -1676,7 +1676,7 @@ namespace {
1676
1676
1677
1677
auto substEltType =
1678
1678
elt->getArgumentInterfaceType ().subst (subMap)
1679
- ->getCanonicalType (D-> getGenericSignature () );
1679
+ ->getCanonicalType ();
1680
1680
1681
1681
auto origEltType = origType.unsafeGetSubstFieldType (elt,
1682
1682
elt->getArgumentInterfaceType ()
Original file line number Diff line number Diff line change
1
+ // RUN: %target-swift-frontend -emit-ir %s
2
+
3
+ public struct S1 < T1> { }
4
+ public extension S1 where T1 == Int {
5
+ public struct S2 < T2> {
6
+ let value : T2
7
+
8
+ public init ( value: T2 ) {
9
+ self . value = value
10
+ }
11
+ }
12
+
13
+ public init < T> ( s: [ S2 < T > ] ) {
14
+ self . init ( )
15
+
16
+ s. forEach { _ in
17
+
18
+ }
19
+ }
20
+ }
21
+
You can’t perform that action at this time.
0 commit comments