The C parts use implicit ints, implicit function declarations, and old-style function declarations heavily. There are actual bugs (pointers truncated to ints), but after I started working on a patch, I eventually encountered parts of the code where appropriate header files were not accessible across subprojects. So this code has to be built in C89 mode.