diff options
| author | Techatrix <19954306+Techatrix@users.noreply.github.com> | 2023-09-25 04:54:07 +0200 |
|---|---|---|
| committer | Veikka Tuominen <git@vexu.eu> | 2023-09-25 18:10:44 +0300 |
| commit | 2adb932ad6ee4ff3d3c640cb8fb7bf7db0ff5d74 (patch) | |
| tree | 805211006b5f7e83115a641ca4fd358b0bcccadf /src/Module.zig | |
| parent | e7bf143b364f004a76e86cad5fd3256fa87761e4 (diff) | |
| download | zig-2adb932ad6ee4ff3d3c640cb8fb7bf7db0ff5d74.tar.gz zig-2adb932ad6ee4ff3d3c640cb8fb7bf7db0ff5d74.zip | |
translate-c: convert clang errors messages into `std.zig.ErrorBundle`
Diffstat (limited to 'src/Module.zig')
| -rw-r--r-- | src/Module.zig | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/Module.zig b/src/Module.zig index bdf8d3a768..0601a77320 100644 --- a/src/Module.zig +++ b/src/Module.zig @@ -131,7 +131,7 @@ failed_embed_files: std.AutoArrayHashMapUnmanaged(*EmbedFile, *ErrorMsg) = .{}, failed_exports: std.AutoArrayHashMapUnmanaged(*Export, *ErrorMsg) = .{}, /// If a decl failed due to a cimport error, the corresponding Clang errors /// are stored here. -cimport_errors: std.AutoArrayHashMapUnmanaged(Decl.Index, []CImportError) = .{}, +cimport_errors: std.AutoArrayHashMapUnmanaged(Decl.Index, std.zig.ErrorBundle) = .{}, /// Candidates for deletion. After a semantic analysis update completes, this list /// contains Decls that need to be deleted if they end up having no references to them. @@ -2603,8 +2603,8 @@ pub fn deinit(mod: *Module) void { } mod.failed_exports.deinit(gpa); - for (mod.cimport_errors.values()) |errs| { - for (errs) |err| err.deinit(gpa); + for (mod.cimport_errors.values()) |*errs| { + errs.deinit(gpa); } mod.cimport_errors.deinit(gpa); @@ -4583,7 +4583,8 @@ pub fn clearDecl( kv.value.destroy(gpa); } if (mod.cimport_errors.fetchSwapRemove(decl_index)) |kv| { - for (kv.value) |err| err.deinit(gpa); + var errors = kv.value; + errors.deinit(gpa); } if (mod.emit_h) |emit_h| { if (emit_h.failed_decls.fetchSwapRemove(decl_index)) |kv| { @@ -4965,7 +4966,8 @@ fn markOutdatedDecl(mod: *Module, decl_index: Decl.Index) !void { kv.value.destroy(mod.gpa); } if (mod.cimport_errors.fetchSwapRemove(decl_index)) |kv| { - for (kv.value) |err| err.deinit(mod.gpa); + var errors = kv.value; + errors.deinit(mod.gpa); } if (mod.emit_h) |emit_h| { if (emit_h.failed_decls.fetchSwapRemove(decl_index)) |kv| { |
