idris-lang/Idris-dev — pull request #784 by ziman (2014-01-19 15:02:53+00:00)
Title: CodegenC: support arbitrary bytes in strings

The C backend used to compile high bytes incorrectly (for example, `"\x80"` to `"\x0A\x40"`) because C does not understand fully the string encoding emitted by Haskell's `show`.

To remedy this, this patch adds `showCStr`, which is a bit more conservative.

All tests pass with the C backend on my machine; other backends have not been tested.