extern "C" todos :)

Hi Mike,

Here are some things that would be nice to have:

This parses correctly, but -ast-dump dies, please add dumper support:

extern "C" typedef void (*PF)(); // pointer to extern C function

Also, this implies that the extern "C"'ness should really be part of the decl's type, what do you think? Alternatively, does this mean that the PF variable decl is 'extern c'?

This doesn't parse, but GCC doesn't accept it either. Is it ok?:

void foo() {
   extern "C" typedef void (*PF)();



The language standard has lots of nice cases and semantics that need implementing. If one wanted to work on this, I'd recommend it. Though, personally, I'd worry about about extern "C++" void foo(int i) { } extern "C++" void foo(double d) { } first. That one certainly encompasses enough to keep someone busy for a while.