diff options
| author | Jacob Young <jacobly0@users.noreply.github.com> | 2023-05-28 02:41:22 -0400 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2023-06-10 20:47:56 -0700 |
| commit | 3b6ca1d35b950d67fff5964f0063dadf01f30e2d (patch) | |
| tree | 953815632535b965c7d32318ca515d8926cf4c4b /src/codegen/c.zig | |
| parent | d40b83de45db27c8c3e7a1f2ccf892563df43637 (diff) | |
| download | zig-3b6ca1d35b950d67fff5964f0063dadf01f30e2d.tar.gz zig-3b6ca1d35b950d67fff5964f0063dadf01f30e2d.zip | |
Module: move memoized data to the intern pool
This avoids memory management bugs with the previous implementation.
Diffstat (limited to 'src/codegen/c.zig')
| -rw-r--r-- | src/codegen/c.zig | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/codegen/c.zig b/src/codegen/c.zig index a8e2077652..e6ce72f48e 100644 --- a/src/codegen/c.zig +++ b/src/codegen/c.zig @@ -1090,6 +1090,7 @@ pub const DeclGen = struct { }; switch (mod.intern_pool.indexToKey(val.ip_index)) { + // types, not values .int_type, .ptr_type, .array_type, @@ -1106,7 +1107,10 @@ pub const DeclGen = struct { .func_type, .error_set_type, .inferred_error_set_type, - => unreachable, // types, not values + // memoization, not values + .memoized_decl, + .memoized_call, + => unreachable, .undef, .runtime_value => unreachable, // handled above .simple_value => |simple_value| switch (simple_value) { |
