I'm writing a minor mode to handle automatic spacing of operator characters, but I'm having some trouble with C/C++. The problem is that I can't figure out how to tell in general whether a
* is a multiplication or a pointer type. Similarly for
> in C++ .
I've currently got some basic hacks to detect the built in types (
char, etc.) and to detect types ending in
_t. I've also found the
c-guess-basic-syntax function which can tell me when point is in a function header so I can handle function argument and return types. However I can't find any way to detect when point is in a normal variable declaration.
Is it possible without implementing a C compiler?