corrode
corrode copied to clipboard
C to Rust translator
Consider the following C code: ```c typedef struct _test test; struct _test { int test; }; static test bar; ``` Corrode fails: ```sh $ corrode uninitialized-global.c ("uninitialized-global.c": line 7): illegal...
Fixes #163.
It would be nice if the auto-generated `enum`s were deriving `PartialCmp`, `PartialEq` and probably `Debug`.
This Rust gets generated: ```rust (*(*state).result).segment = (SegmentRegister::SEG_ES as (i32) + (prefix as (i32) - 0x60i32)) as (SegmentRegister); ``` And unfortunately, that's not valid: ``` error[E0605]: non-primitive cast: `i32` as...
In C, we have a bunch of things like: ``` const char *names[] = { "abc", "def", "ghi", } ``` But corrode doesn't recognize this and I have to put...
The error in #49 may be harder to eliminate than necessary, as I can't tell how the project arrived at the (very, very internal to the C library) header in...
Compiling static recursive functions fails with "internal error: runOnce action depends on itself"
The following is literally enough to trigger the error: ``` static void kill(void) { kill(); } void main(void) { kill(); } ``` Just removing the static qualifier produces the expected...
Docker was broken because stack required a GHC version newer than the one included in 16.04.
Hi again @jameysharp Have you thought about using Corrode on small-ish `C` code? I was experimenting with the `C` language tasks from `RosettaCode` but the errors I keep running into...