Oftentimes compile to C is "It's C Jim, but not as we know it"
You can write C as if it is a SSA VM or similar intermediate representation that leaves very little work for the first stages of the compiler.