ほんとに温存しているなら、
そのコンパイラーのcharが符号付きか符号なしか、
「# define ...」と、「#」の後ろに空白あけることができたかどうかが言えるはず。

対応していないはずのregister宣言を書いた場合にどういうバグがでるかもな!

(覚えている自分が怖い!)