# C backend: cleanups to wrapping int operations · gitcafe/zig

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

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

Visibility: public

Requested revision: 9dbe68485489e576795fee04c83e69a2b6cf776a

Requested commit: 9dbe68485489e576795fee04c83e69a2b6cf776a

Commit: 9dbe68485489e576795fee04c83e69a2b6cf776a

Tree: ade71b33286590a21600e113046c62e89a4954c7

Author: Andrew Kelley

Committer: Andrew Kelley

## Message

```
C backend: cleanups to wrapping int operations

 * less branching by passing parameters in the main op code switch.
 * properly pass the target when asking the type system for int info.
 * handle u8, i16, etc when it is represented using
   int_unsigned/int_signed tag.
 * compile error instead of assertion failure for unimplemented cases
   (greater than 64 bits integer).
 * control flow cleanups
 * zig.h: expand macros into inline functions
 * reduce the complexity of the test case by making it one test case
   that calls multiple functions. Also fix the problem of c_int max
   value mismatch between host and target.

```

## Parents

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

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