Here's a fix for the FASM backen: in src/cc4.c, in function setcodes, all of the DB, DW, DD, RB, RW, RD, parts need to be edited to include a semicolon (at least with fasm-1.69.31). Example: line 296, change "\000 DD " to "\000: DD".
I'm available to help. It looks like completing the changes to convert the backend to are trivial, and you've already done the heavy lifting.
tcc is another tiny compiler alternative...
...which may be interesting if this one is insufficient for ones' needs.
simplec does certainly seem to be accepting of a wider variety of code, however -- it happily attempts to compile a fair bit of non-C99-compliant code that tcc refuses to touch. (Indeed, I had to fix a number of pointer-misuse issues in simplec's codebase before tcc would deign to compile it).
An open, cross-platform journaling program.
A scientific plotting package.