File tree 2 files changed +14
-2
lines changed
2 files changed +14
-2
lines changed Original file line number Diff line number Diff line change @@ -173,7 +173,7 @@ class ClassAggregateLiteral extends AggregateLiteral {
173
173
*/
174
174
Expr getFieldExpr ( Field field ) {
175
175
field = classType .getAField ( ) and
176
- result = getChild ( field . getInitializationOrder ( ) )
176
+ aggregate_field_init ( this , result , field )
177
177
}
178
178
179
179
/**
@@ -230,7 +230,7 @@ class ArrayAggregateLiteral extends AggregateLiteral {
230
230
* element `elementIndex`, if present.
231
231
*/
232
232
Expr getElementExpr ( int elementIndex ) {
233
- result = getChild ( elementIndex )
233
+ aggregate_array_init ( this , result , elementIndex )
234
234
}
235
235
236
236
/**
Original file line number Diff line number Diff line change @@ -1400,6 +1400,18 @@ new_array_allocated_type(
1400
1400
int type_id: @type ref
1401
1401
);
1402
1402
1403
+ aggregate_field_init(
1404
+ unique int aggregate: @aggregateliteral ref,
1405
+ int initializer: @expr ref,
1406
+ int field: @membervariable ref
1407
+ );
1408
+
1409
+ aggregate_array_init(
1410
+ unique int aggregate: @aggregateliteral ref,
1411
+ int initializer: @expr ref,
1412
+ int element_index: int ref
1413
+ );
1414
+
1403
1415
@ctorinit = @ctordirectinit
1404
1416
| @ctorvirtualinit
1405
1417
| @ctorfieldinit
You can’t perform that action at this time.
0 commit comments