88// RUN: %FileCheck %s --input-file %t/InheritedDocs.symbols.json --check-prefixes BONUS-DOCS
99// RUN: %FileCheck %s --input-file %t/InheritedDocs.symbols.json --check-prefixes EXTRA
1010// RUN: %FileCheck %s --input-file %t/InheritedDocs.symbols.json --check-prefixes LOCAL
11+ // RUN: %FileCheck %s --input-file %t/InheritedDocs.symbols.json --check-prefixes SUPER
1112
1213// RUN: %target-swift-symbolgraph-extract -module-name InheritedDocs -I %t -pretty-print -output-dir %t -skip-inherited-docs
1314// RUN: %FileCheck %s --input-file %t/InheritedDocs.symbols.json --check-prefixes CHECK,SKIP
1617// RUN: %FileCheck %s --input-file %t/InheritedDocs.symbols.json --check-prefixes BONUS-SKIP
1718// RUN: %FileCheck %s --input-file %t/InheritedDocs.symbols.json --check-prefixes EXTRA
1819// RUN: %FileCheck %s --input-file %t/InheritedDocs.symbols.json --check-prefixes LOCAL
20+ // RUN: %FileCheck %s --input-file %t/InheritedDocs.symbols.json --check-prefixes SUPER
1921
2022// RUN: %empty-directory(%t)
2123// RUN: %target-build-swift %s -module-name InheritedDocs -emit-module -emit-module-path %t/InheritedDocs.swiftmodule -emit-symbol-graph -emit-symbol-graph-dir %t/ -skip-inherited-docs
6062
6163// local implementations of a local protocol still need to a relation to that protocol
6264
63- // LOCAL: "source": "s:13InheritedDocs1SV9localFuncyyF"
65+ // LOCAL: "source": "s:13InheritedDocs1SV9localFuncyyF"
6466// LOCAL-NEXT: "target": "s:13InheritedDocs1SV"
6567// LOCAL-NEXT: "sourceOrigin"
6668// LOCAL-NEXT: "identifier": "s:13InheritedDocs1PP9localFuncyyF"
6769// LOCAL-NEXT: "displayName": "P.localFunc()"
6870
71+ // ...both with and without docs
72+
73+ // SUPER: "source": "s:13InheritedDocs1SV9superFuncyyF"
74+ // SUPER-NEXT: "target": "s:13InheritedDocs1SV"
75+ // SUPER-NEXT: "sourceOrigin"
76+ // SUPER-NEXT: "identifier": "s:13InheritedDocs1PP9superFuncyyF"
77+ // SUPER-NEXT: "displayName": "P.superFunc()"
78+
6979/// Protocol P
7080public protocol P {
7181 /// Some Function
7282 func someFunc( )
7383
7484 /// It's a local function!
7585 func localFunc( )
86+
87+ func superFunc( )
7688}
7789
7890public extension P {
@@ -86,4 +98,6 @@ public extension P {
8698
8799public struct S : P {
88100 public func localFunc( ) { }
101+
102+ public func superFunc( ) { }
89103}
0 commit comments