| ... | @@ -1074,7 +1074,7 @@ fn zirStructDecl( | ... | @@ -1074,7 +1074,7 @@ fn zirStructDecl( |
| 1074 | .val = struct_val, | 1074 | .val = struct_val, |
| 1075 | }, type_name); | 1075 | }, type_name); |
| 1076 | new_decl.owns_tv = true; | 1076 | new_decl.owns_tv = true; |
| 1077 | errdefer sema.mod.deleteAnonDecl(&block.base, new_decl); | 1077 | errdefer sema.mod.abortAnonDecl(new_decl); |
| 1078 | struct_obj.* = .{ | 1078 | struct_obj.* = .{ |
| 1079 | .owner_decl = new_decl, | 1079 | .owner_decl = new_decl, |
| 1080 | .fields = .{}, | 1080 | .fields = .{}, |
| ... | @@ -1185,7 +1185,7 @@ fn zirEnumDecl( | ... | @@ -1185,7 +1185,7 @@ fn zirEnumDecl( |
| 1185 | .val = enum_val, | 1185 | .val = enum_val, |
| 1186 | }, type_name); | 1186 | }, type_name); |
| 1187 | new_decl.owns_tv = true; | 1187 | new_decl.owns_tv = true; |
| 1188 | errdefer sema.mod.deleteAnonDecl(&block.base, new_decl); | 1188 | errdefer sema.mod.abortAnonDecl(new_decl); |
| 1189 | | 1189 | |
| 1190 | enum_obj.* = .{ | 1190 | enum_obj.* = .{ |
| 1191 | .owner_decl = new_decl, | 1191 | .owner_decl = new_decl, |
| ... | @@ -1373,7 +1373,7 @@ fn zirUnionDecl( | ... | @@ -1373,7 +1373,7 @@ fn zirUnionDecl( |
| 1373 | .val = union_val, | 1373 | .val = union_val, |
| 1374 | }, type_name); | 1374 | }, type_name); |
| 1375 | new_decl.owns_tv = true; | 1375 | new_decl.owns_tv = true; |
| 1376 | errdefer sema.mod.deleteAnonDecl(&block.base, new_decl); | 1376 | errdefer sema.mod.abortAnonDecl(new_decl); |
| 1377 | union_obj.* = .{ | 1377 | union_obj.* = .{ |
| 1378 | .owner_decl = new_decl, | 1378 | .owner_decl = new_decl, |
| 1379 | .tag_ty = Type.initTag(.@"null"), | 1379 | .tag_ty = Type.initTag(.@"null"), |
| ... | @@ -1443,7 +1443,7 @@ fn zirErrorSetDecl( | ... | @@ -1443,7 +1443,7 @@ fn zirErrorSetDecl( |
| 1443 | .val = error_set_val, | 1443 | .val = error_set_val, |
| 1444 | }, type_name); | 1444 | }, type_name); |
| 1445 | new_decl.owns_tv = true; | 1445 | new_decl.owns_tv = true; |
| 1446 | errdefer sema.mod.deleteAnonDecl(&block.base, new_decl); | 1446 | errdefer sema.mod.abortAnonDecl(new_decl); |
| 1447 | const names = try new_decl_arena.allocator.alloc([]const u8, fields.len); | 1447 | const names = try new_decl_arena.allocator.alloc([]const u8, fields.len); |
| 1448 | for (fields) |str_index, i| { | 1448 | for (fields) |str_index, i| { |
| 1449 | names[i] = try new_decl_arena.allocator.dupe(u8, sema.code.nullTerminatedString(str_index)); | 1449 | names[i] = try new_decl_arena.allocator.dupe(u8, sema.code.nullTerminatedString(str_index)); |
| ... | @@ -2101,7 +2101,7 @@ fn zirStr(sema: *Sema, block: *Scope.Block, inst: Zir.Inst.Index) CompileError!A | ... | @@ -2101,7 +2101,7 @@ fn zirStr(sema: *Sema, block: *Scope.Block, inst: Zir.Inst.Index) CompileError!A |
| 2101 | .ty = decl_ty, | 2101 | .ty = decl_ty, |
| 2102 | .val = decl_val, | 2102 | .val = decl_val, |
| 2103 | }); | 2103 | }); |
| 2104 | errdefer sema.mod.deleteAnonDecl(&block.base, new_decl); | 2104 | errdefer sema.mod.abortAnonDecl(new_decl); |
| 2105 | try new_decl.finalizeNewArena(&new_decl_arena); | 2105 | try new_decl.finalizeNewArena(&new_decl_arena); |
| 2106 | return sema.analyzeDeclRef(new_decl); | 2106 | return sema.analyzeDeclRef(new_decl); |
| 2107 | } | 2107 | } |
| ... | @@ -11804,7 +11804,7 @@ pub fn resolveDeclFields(sema: *Sema, block: *Scope.Block, src: LazySrcLoc, ty: | ... | @@ -11804,7 +11804,7 @@ pub fn resolveDeclFields(sema: *Sema, block: *Scope.Block, src: LazySrcLoc, ty: |
| 11804 | switch (ty.tag()) { | 11804 | switch (ty.tag()) { |
| 11805 | .@"struct" => { | 11805 | .@"struct" => { |
| 11806 | const struct_obj = ty.castTag(.@"struct").?.data; | 11806 | const struct_obj = ty.castTag(.@"struct").?.data; |
| 11807 | if (struct_obj.owner_decl.namespace.parent != sema.owner_decl.namespace) return; | 11807 | if (struct_obj.owner_decl.namespace.parent != block.src_decl.namespace) return; |
| 11808 | switch (struct_obj.status) { | 11808 | switch (struct_obj.status) { |
| 11809 | .none => {}, | 11809 | .none => {}, |
| 11810 | .field_types_wip => { | 11810 | .field_types_wip => { |
| ... | @@ -11822,7 +11822,7 @@ pub fn resolveDeclFields(sema: *Sema, block: *Scope.Block, src: LazySrcLoc, ty: | ... | @@ -11822,7 +11822,7 @@ pub fn resolveDeclFields(sema: *Sema, block: *Scope.Block, src: LazySrcLoc, ty: |
| 11822 | }, | 11822 | }, |
| 11823 | .@"union", .union_tagged => { | 11823 | .@"union", .union_tagged => { |
| 11824 | const union_obj = ty.cast(Type.Payload.Union).?.data; | 11824 | const union_obj = ty.cast(Type.Payload.Union).?.data; |
| 11825 | if (union_obj.owner_decl.namespace.parent != sema.owner_decl.namespace) return; | 11825 | if (union_obj.owner_decl.namespace.parent != block.src_decl.namespace) return; |
| 11826 | switch (union_obj.status) { | 11826 | switch (union_obj.status) { |
| 11827 | .none => {}, | 11827 | .none => {}, |
| 11828 | .field_types_wip => { | 11828 | .field_types_wip => { |
| ... | @@ -12210,7 +12210,7 @@ fn generateUnionTagTypeNumbered( | ... | @@ -12210,7 +12210,7 @@ fn generateUnionTagTypeNumbered( |
| 12210 | .val = enum_val, | 12210 | .val = enum_val, |
| 12211 | }); | 12211 | }); |
| 12212 | new_decl.owns_tv = true; | 12212 | new_decl.owns_tv = true; |
| 12213 | errdefer sema.mod.deleteAnonDecl(&block.base, new_decl); | 12213 | errdefer sema.mod.abortAnonDecl(new_decl); |
| 12214 | | 12214 | |
| 12215 | enum_obj.* = .{ | 12215 | enum_obj.* = .{ |
| 12216 | .owner_decl = new_decl, | 12216 | .owner_decl = new_decl, |
| ... | @@ -12246,7 +12246,7 @@ fn generateUnionTagTypeSimple(sema: *Sema, block: *Scope.Block, fields_len: u32) | ... | @@ -12246,7 +12246,7 @@ fn generateUnionTagTypeSimple(sema: *Sema, block: *Scope.Block, fields_len: u32) |
| 12246 | .val = enum_val, | 12246 | .val = enum_val, |
| 12247 | }); | 12247 | }); |
| 12248 | new_decl.owns_tv = true; | 12248 | new_decl.owns_tv = true; |
| 12249 | errdefer sema.mod.deleteAnonDecl(&block.base, new_decl); | 12249 | errdefer sema.mod.abortAnonDecl(new_decl); |
| 12250 | | 12250 | |
| 12251 | enum_obj.* = .{ | 12251 | enum_obj.* = .{ |
| 12252 | .owner_decl = new_decl, | 12252 | .owner_decl = new_decl, |