Skip to content

Commit 81aad59

Browse files
committed
ASTDemangler: Add test for private type in extension of foreign type
This was one of the cases that TypeReconstruction did not support; let's make sure its covered by a test.
1 parent 0a9b8fa commit 81aad59

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

test/TypeDecoder/foreign_types.swift

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,11 @@ import Foundation
1010
import CoreCooling
1111
import ErrorEnums
1212

13+
extension CCRefrigerator {
14+
struct InternalNestedType {}
15+
fileprivate struct PrivateNestedType {}
16+
}
17+
1318
/*
1419
do {
1520
let x1 = CCRefrigeratorCreate(kCCPowerStandard)
@@ -45,6 +50,8 @@ do {
4550
// DEMANGLE: $sSo18WrapperByAttributeaD
4651
// DEMANGLE: $sSo7IceCubeVD
4752
// DEMANGLE: $sSo10BlockOfIceaD
53+
// DEMANGLE: $sSo17CCRefrigeratorRefa13foreign_typesE18InternalNestedTypeVD
54+
// DEMANGLE: $sSo17CCRefrigeratorRefa13foreign_typesE17PrivateNestedType33_5415CB6AE6FCD935BF2278A4C9A5F9C3LLVD
4855

4956
// CHECK: CCRefrigerator
5057
// CHECK: MyError.Code
@@ -55,6 +62,8 @@ do {
5562
// CHECK: WrapperByAttribute
5663
// CHECK: IceCube
5764
// CHECK: BlockOfIce
65+
// CHECK: CCRefrigerator.InternalNestedType
66+
// CHECK: CCRefrigerator.PrivateNestedType
5867

5968
// DEMANGLE: $sSo17CCRefrigeratorRefamD
6069
// DEMANGLE: $sSo7MyErrorVmD
@@ -65,6 +74,8 @@ do {
6574
// DEMANGLE: $sSo18WrapperByAttributeamD
6675
// DEMANGLE: $sSo7IceCubeVmD
6776
// DEMANGLE: $sSo10BlockOfIceamD
77+
// DEMANGLE: $sSo17CCRefrigeratorRefa13foreign_typesE18InternalNestedTypeVmD
78+
// DEMANGLE: $sSo17CCRefrigeratorRefa13foreign_typesE17PrivateNestedType33_5415CB6AE6FCD935BF2278A4C9A5F9C3LLVmD
6879

6980
// CHECK: CCRefrigerator.Type
7081
// CHECK: MyError.Code.Type
@@ -75,3 +86,6 @@ do {
7586
// CHECK: WrapperByAttribute.Type
7687
// CHECK: IceCube.Type
7788
// CHECK: BlockOfIce.Type
89+
// CHECK: CCRefrigerator.InternalNestedType.Type
90+
// CHECK: CCRefrigerator.PrivateNestedType.Type
91+

0 commit comments

Comments
 (0)