From 103e549615ffe6bcc31e8fc0ca888a55e21681d8 Mon Sep 17 00:00:00 2001 From: Dale Weiler Date: Fri, 7 Nov 2014 02:01:17 -0500 Subject: [PATCH] Don't emit whitespace when stringifying TOKEN_WHITE. Other aspects of the preprocessor already skip whitespace leading up to a token. The only situation in which a TOKEN_WHITE can exist as part of the token stream during stringification, is when the whitespace is trailing after a token. This is situation is really only possible in the context of a macro argument. This behaviour is inconsistent. Consider the following FOO( space_before) FOO(space_after ) The former will reduce to "space_before" since the preprocessor will skip whitespace leading up to the token `space_before', while the latter will reduce to "space_after ". The C preprocessor doesn't preserve whitespace, so we won't either. This doesn't break any existing code. --- ftepp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ftepp.c b/ftepp.c index 7b24c64..7947b91 100644 --- a/ftepp.c +++ b/ftepp.c @@ -703,9 +703,9 @@ static void ftepp_stringify_token(ftepp_t *ftepp, pptoken *token) ++ch; } break; - case TOKEN_WHITE: + /*case TOKEN_WHITE: ftepp_out(ftepp, " ", false); - break; + break;*/ case TOKEN_EOL: ftepp_out(ftepp, "\\n", false); break; -- 2.39.2