c2nim is a tool to translate ANSI C code to Nim. The output is human-readable Nim code that is meant to be tweaked by hand after the translation process. c2nim is no real compiler!
Please see the manual here.
Run nimble install c2nim.
c2nim is preliminary meant to translate C header files. Because of this, the preprocessor is part of the parser. For example:
#define abc 123
#define xyz 789Is translated into:
const
abc* = 123
xyz* = 789c2nim is meant to translate fragments of C/C++ code and thus does not follow include files. c2nim cannot parse all of ANSI C/C++ and many constructs cannot be represented in Nim.