"coupled with the preprocessor" is a bit of a cop-out :-). Do you have a concrete example of what typeof would enable? Like a basic implementation of a vector type?
True, it is basically //go: generate, before Go was born.
Here is an example, https://codereview.stackexchange.com/questions/101816/generi...
Although in typical C fashion is a bit of kludge.