Solal,
Ian is right, m4 corresponds better to what you've got in mind
Your idea (strengthening the preprocessing phase) of C is already
(mostly) implemented : it is called Cawen. Please have a look at :
http://www.melvenn.com/en/cawen/why-cawen/
In short : C99 + m4 = Cawen
And your idea is
Here is the way I understood the goal of your long quest (I may be
completely mistaken since I do not quite get what part of the job you
want to leave to the language and what part to its compiler)
"Is there a language that allow the developer to add information about
the way a particular program