@@ -45,6 +45,12 @@ struct S3 {
45
45
}
46
46
}
47
47
48
+ @attached ( conformance)
49
+ macro Hashable( ) = #externalMacro( module: " MacroDefinition " , type: " HashableMacro " )
50
+
51
+ @Hashable
52
+ struct S4 { }
53
+
48
54
// FIXME: Swift parser is not enabled on Linux CI yet.
49
55
// REQUIRES: OS=macosx
50
56
@@ -162,7 +168,7 @@ struct S3 {
162
168
// ACCESSOR2_EXPAND-NEXT: source.edit.kind.active:
163
169
// ACCESSOR2_EXPAND-NEXT: 33:3-33:20 ""
164
170
165
- //##-- Refactoring expanding the second accessor macro
171
+ //##-- Refactoring expanding the addCompletionHandler macro.
166
172
// RUN: %sourcekitd-test -req=refactoring.expand.macro -pos=42:5 %s -- ${COMPILER_ARGS[@]} | %FileCheck -check-prefix=PEER_EXPAND %s
167
173
// PEER_EXPAND: source.edit.kind.active:
168
174
// PEER_EXPAND-NEXT: 45:4-45:4 (@__swiftmacro_9MacroUser2S3V1f1a3for_SSSi_SSSdtYaF20addCompletionHandlerfMp_.swift) "
@@ -176,6 +182,16 @@ struct S3 {
176
182
// PEER_EXPAND-NEXT: source.edit.kind.active:
177
183
// PEER_EXPAND-NEXT: 42:3-42:24 ""
178
184
185
+ //##-- Refactoring expanding a conformance macro.
186
+ // RUN: %sourcekitd-test -req=refactoring.expand.macro -pos=51:5 %s -- ${COMPILER_ARGS[@]} | %FileCheck -check-prefix=CONFORMANCE_EXPAND %s
187
+ // CONFORMANCE_EXPAND: source.edit.kind.active:
188
+ // CONFORMANCE_EXPAND-NEXT: 52:14-52:14 (@__swiftmacro_9MacroUser2S4V8HashablefMc_.swift) "
189
+ // CONFORMANCE_EXPAND-EMPTY:
190
+ // CONFORMANCE_EXPAND-NEXT: extension S4 : Hashable {}
191
+ // CONFORMANCE_EXPAND-NEXT: "
192
+ // CONFORMANCE_EXPAND-NEXT: source.edit.kind.active:
193
+ // CONFORMANCE_EXPAND-NEXT: 51:1-51:10 ""
194
+
179
195
//##-- Doc info, mostly just checking we don't crash because of the separate buffers
180
196
// RUN: %sourcekitd-test -req=doc-info %s -- ${COMPILER_ARGS_WITHOUT_SOURCE[@]} | %FileCheck -check-prefix=DOCINFO %s
181
197
// DOCINFO: key.name: "myTypeWrapper()"
0 commit comments