I don't think this is possible.
I disagree:
void bar()
{
}
void foo()
{
bar(); // there, I use bar inside foo
}
If you want to use a function that hasn't been defined yet, you must declare it before you can use it:
void baz(); // function declaration
void foo()
{
baz();
}
void baz() // function definition
{
}