C backend: flatten out some of the long-lived state

When the compiler's state lives through multiple Compilation.update()
calls, the C backend stores the rendered C source code for each
decl code body and forward declarations.

With this commit, the state is still stored, but it is managed in one
big array list in link/C.zig rather than many array lists, one for each
decl. This means simpler serialization and deserialization.
1606717b5fAndrew Kelley committed on 9/27/2023, 11:09:22 AMparent70563ae
2 files changedLine totals unavailable