# Zcu: eliminate \`Decl.alive\` field · gitcafe/zig

[View on GitCafe](https://git.cafe/gitcafe/zig/commit/26a94e8481385619ae049143dd67e551f333fa3f)

Repository: [gitcafe/zig](https://git.cafe/gitcafe/zig)

Visibility: public

Requested revision: 26a94e8481385619ae049143dd67e551f333fa3f

Requested commit: 26a94e8481385619ae049143dd67e551f333fa3f

Commit: 26a94e8481385619ae049143dd67e551f333fa3f

Tree: 2106272eed6fb7b15a8309c6fc5137e6fec93234

Author: mlugg

Committer: mlugg

## Message

```
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`.

```

## Parents

- [152a2ceaf738301cd59165a4f17d915391321bdc](https://git.cafe/gitcafe/zig/commit/152a2ceaf738301cd59165a4f17d915391321bdc?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zig/tree/26a94e8481385619ae049143dd67e551f333fa3f?format=markdown)
