Commit 5ee0431527

Andrew Kelley <andrew@ziglang.org>
2021-01-07 01:40:25
stage2: update to new ArrayListHashMap API
1 parent 2f58efc
Changed files (3)
src/link/C.zig
@@ -112,8 +112,8 @@ pub fn updateDecl(self: *C, module: *Module, decl: *Module.Decl) !void {
     code.* = object.code.moveToUnmanaged();
 
     // Free excess allocated memory for this Decl.
-    fwd_decl.shrink(module.gpa, fwd_decl.items.len);
-    code.shrink(module.gpa, code.items.len);
+    fwd_decl.shrinkAndFree(module.gpa, fwd_decl.items.len);
+    code.shrinkAndFree(module.gpa, code.items.len);
 }
 
 pub fn updateDeclLineNumber(self: *C, module: *Module, decl: *Module.Decl) !void {
src/Compilation.zig
@@ -1564,7 +1564,7 @@ pub fn performAllTheWork(self: *Compilation) error{ TimerUnsupported, OutOfMemor
                 };
 
                 fwd_decl.* = dg.fwd_decl.moveToUnmanaged();
-                fwd_decl.shrink(module.gpa, fwd_decl.items.len);
+                fwd_decl.shrinkAndFree(module.gpa, fwd_decl.items.len);
             },
         },
         .analyze_decl => |decl| {
src/Module.zig
@@ -1885,10 +1885,10 @@ pub fn deleteDecl(self: *Module, decl: *Decl) !void {
     if (self.failed_decls.swapRemove(decl)) |entry| {
         entry.value.destroy(self.gpa);
     }
-    if (self.emit_h_failed_decls.remove(decl)) |entry| {
+    if (self.emit_h_failed_decls.swapRemove(decl)) |entry| {
         entry.value.destroy(self.gpa);
     }
-    if (self.compile_log_decls.remove(decl)) |*entry| {
+    if (self.compile_log_decls.swapRemove(decl)) |*entry| {
         entry.value.deinit(self.gpa);
     }
     self.deleteDeclExports(decl);
@@ -1978,10 +1978,10 @@ fn markOutdatedDecl(self: *Module, decl: *Decl) !void {
     if (self.failed_decls.swapRemove(decl)) |entry| {
         entry.value.destroy(self.gpa);
     }
-    if (self.emit_h_failed_decls.remove(decl)) |entry| {
+    if (self.emit_h_failed_decls.swapRemove(decl)) |entry| {
         entry.value.destroy(self.gpa);
     }
-    if (self.compile_log_decls.remove(decl)) |*entry| {
+    if (self.compile_log_decls.swapRemove(decl)) |*entry| {
         entry.value.deinit(self.gpa);
     }
     decl.analysis = .outdated;