@@ -15,7 +15,7 @@ macro AddMacroAddedStruct() = #externalMacro(module: "MacroDefinition", type: "A
15
15
@freestanding ( declaration, names: named ( macroAddedVar) )
16
16
macro AddMacroAddedVar( ) = #externalMacro( module: " MacroDefinition " , type: " AddVarDeclMacro " )
17
17
18
- @attached ( extension, conformances: MyProto, names: prefixed ( _extension_) )
18
+ @attached ( extension, conformances: MyProto, names: prefixed ( _extension_) , named ( _Extension_MyProto ) )
19
19
macro AddExtension( ) = #externalMacro( module: " MacroDefinition " , type: " AddExtensionMacro " )
20
20
21
21
@attached ( peer, names: prefixed ( _peer_) )
@@ -43,6 +43,9 @@ struct MyStruct {
43
43
#AddMacroAddedVar
44
44
45
45
@AddPeerVar
46
+ @AddExtension
47
+ @AddMemberVar
48
+ @AddPeerStruct
46
49
struct Inner { }
47
50
}
48
51
@@ -131,3 +134,83 @@ extension MyStruct {
131
134
// CHECK: "type": "Swift.Int",
132
135
// CHECK: "valueKind": "RawLiteral",
133
136
// CHECK: "value": "3"
137
+
138
+
139
+ // CHECK: "typeName": "ExtractFromMacroExpansion.MyStruct.Inner",
140
+ // CHECK: "properties": [
141
+ // CHECK: "label": "_member_Inner",
142
+ // CHECK: "type": "Swift.Int",
143
+ // CHECK: "valueKind": "RawLiteral",
144
+ // CHECK: "value": "5"
145
+
146
+ // CHECK: "label": "_extension_Inner",
147
+ // CHECK: "type": "Swift.Int",
148
+ // CHECK: "valueKind": "RawLiteral",
149
+ // CHECK: "value": "3"
150
+
151
+
152
+ // CHECK: "typeName": "ExtractFromMacroExpansion.MyStruct._Peer_Inner",
153
+ // CHECK: "properties": [
154
+ // CHECK: "label": "peerMacroVar",
155
+ // CHECK: "type": "Swift.Int",
156
+ // CHECK: "valueKind": "RawLiteral",
157
+ // CHECK: "value": "7"
158
+
159
+ // CHECK: "label": "macroAddedVar",
160
+ // CHECK: "type": "Swift.Int",
161
+ // CHECK: "valueKind": "RawLiteral",
162
+ // CHECK: "value": "2"
163
+
164
+ // CHECK: "label": "_peer_peerMacroVar",
165
+ // CHECK: "type": "Swift.Int",
166
+ // CHECK: "valueKind": "RawLiteral",
167
+ // CHECK: "value": "4"
168
+
169
+ // CHECK: "label": "_member__Peer_Inner",
170
+ // CHECK: "type": "Swift.Int",
171
+ // CHECK: "valueKind": "RawLiteral",
172
+ // CHECK: "value": "5"
173
+
174
+ // CHECK: "label": "_extension__Peer_Inner",
175
+ // CHECK: "type": "Swift.Int",
176
+ // CHECK: "valueKind": "RawLiteral",
177
+ // CHECK: "value": "3"
178
+
179
+
180
+ // CHECK: "typeName": "ExtractFromMacroExpansion.MacroAddedStruct._Extension_MyProto",
181
+ // CHECK: "properties": [
182
+ // CHECK: "label": "nested",
183
+ // CHECK: "type": "Swift.Int",
184
+ // CHECK: "valueKind": "RawLiteral",
185
+ // CHECK: "value": "8"
186
+
187
+
188
+ // CHECK: "typeName": "ExtractFromMacroExpansion._Peer_MyStruct._Extension_MyProto",
189
+ // CHECK: "properties": [
190
+ // CHECK: "label": "nested",
191
+ // CHECK: "type": "Swift.Int",
192
+ // CHECK: "valueKind": "RawLiteral",
193
+ // CHECK: "value": "8"
194
+
195
+ // CHECK: "typeName": "ExtractFromMacroExpansion.MyStruct._Extension_MyProto",
196
+ // CHECK: "properties": [
197
+ // CHECK: "label": "nested",
198
+ // CHECK: "type": "Swift.Int",
199
+ // CHECK: "valueKind": "RawLiteral",
200
+ // CHECK: "value": "8"
201
+
202
+
203
+ // CHECK: "typeName": "ExtractFromMacroExpansion.MyStruct._Peer_Inner._Extension_MyProto",
204
+ // CHECK: "properties": [
205
+ // CHECK: "label": "nested",
206
+ // CHECK: "type": "Swift.Int",
207
+ // CHECK: "valueKind": "RawLiteral",
208
+ // CHECK: "value": "8"
209
+
210
+
211
+ // CHECK: "typeName": "ExtractFromMacroExpansion.MyStruct.Inner._Extension_MyProto",
212
+ // CHECK: "properties": [
213
+ // CHECK: "label": "nested",
214
+ // CHECK: "type": "Swift.Int",
215
+ // CHECK: "valueKind": "RawLiteral",
216
+ // CHECK: "value": "8"
0 commit comments