Preprocessor: generate extra spaces between tokens if needed

If twp consecutive tokens can be misinterpreted as another,
generate an extra space between them. For example:
+BAD(=)

Should produce
+ =
tmp: Prepr: expression parsing