aboutsummaryrefslogtreecommitdiff
path: root/src/Sema.zig
diff options
context:
space:
mode:
authormlugg <mlugg@mlugg.co.uk>2024-03-26 04:06:39 +0000
committermlugg <mlugg@mlugg.co.uk>2024-03-26 13:48:06 +0000
commit26a94e8481385619ae049143dd67e551f333fa3f (patch)
tree2106272eed6fb7b15a8309c6fc5137e6fec93234 /src/Sema.zig
parent152a2ceaf738301cd59165a4f17d915391321bdc (diff)
downloadzig-26a94e8481385619ae049143dd67e551f333fa3f.tar.gz
zig-26a94e8481385619ae049143dd67e551f333fa3f.zip
Zcu: eliminate `Decl.alive` field
Legacy anon decls now have three uses: * Type owner decls * Function owner decls * `@export` and `@extern` Therefore, there are no longer any cases where we wish to explicitly omit legacy anon decls from the binary. This means we can remove the concept of an "alive" vs "dead" `Decl`, which also allows us to remove the separate `anon_work_queue` in `Compilation`.
Diffstat (limited to 'src/Sema.zig')
-rw-r--r--src/Sema.zig2
1 files changed, 0 insertions, 2 deletions
diff --git a/src/Sema.zig b/src/Sema.zig
index c0b78c3e1d..8dfd0248f5 100644
--- a/src/Sema.zig
+++ b/src/Sema.zig
@@ -6445,8 +6445,6 @@ pub fn analyzeExport(
return sema.fail(block, src, "export target cannot be extern", .{});
}
- // This decl is alive no matter what, since it's being exported
- try mod.markDeclAlive(exported_decl);
try sema.maybeQueueFuncBodyAnalysis(exported_decl_index);
try addExport(mod, .{