wanted to keep low noise, thus did not disclose more details, but here it is:
I am experimenting with some language extensions, such as classes/objects,
fibers, etc. For some parts of the could just use C++ but among other
annoyances for me in C++ is that I do not have "official" access to the virtual
function pointer table. The list is long. I call these extensions decorators.
One can think this as a macro and preprocessor replacement, where the
replacement preprocessor is supposed to understand part of the syntax
I tried to do all that with macros... but after really lot of work in hacking around with
macros like in boost preprocessor, I decided to stop fighting the wind mils.
Though ended up in writing nice macros for class declaration/initalization, for method calling etc.
With macros, I could have stayed 100% C, but the price was too high.
So I am trying to add these decorators through minimum language extensions.
Like original C++ compilers, the code should translate into C.
For (pre)processing my extensions I need to build a C parser, though. Have two options
for the moment: hack tcc and/or write my own context-sensitive parser with ragel.
(I just started to know ragel. It seems that through fcall feature it is possible to write this parser).
The approach with ragel would allow me to preprocess the "decarated" code into C,
and compile with anything. By hacking tcc, I would have from the beginning a
fast compiler, but with less optimized code. And here could clang come into picture.