# C backend: while, struct tests, better undefined global handling · gitcafe/zig

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

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

Visibility: public

Requested revision: e3d638a49e09340bc1f779185cab3ad85d7045af

Requested commit: e3d638a49e09340bc1f779185cab3ad85d7045af

Commit: e3d638a49e09340bc1f779185cab3ad85d7045af

Tree: 359853c070abc6130f9cb79900573f6add9d74bb

Author: Emily Bellows

Committer: Emily Bellows

## Message

```
C backend: while, struct tests, better undefined global handling

1. Function signatures that return a no member struct return void
2. Undefined var decls don't get a value generated for them
3. Don't generate bitcast code if the result isn't used, since
   bitcast is a pure function. Right now struct handling code
   generates some weird unused bitcast AIR, and this optimization
   side steps that issue.

```

## Parents

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

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