@@ -1364,7 +1364,9 @@ void simplecpp::TokenList::combineOperators()
13641364 if (tok->next && tok->next ->op == ' .' && tok->next ->location .col == (tok->location .col + 1 ) &&
13651365 tok->next ->next && tok->next ->next ->op == ' .' && tok->next ->next ->location .col == (tok->location .col + 2 )) {
13661366 tok->setstr (" ..." );
1367+ tok->whitespaceahead = tok->next ->whitespaceahead ;
13671368 deleteToken (tok->next );
1369+ tok->whitespaceahead = tok->next ->whitespaceahead ;
13681370 deleteToken (tok->next );
13691371 continue ;
13701372 }
@@ -1374,11 +1376,13 @@ void simplecpp::TokenList::combineOperators()
13741376 deleteToken (tok->previous );
13751377 if (sameline (tok, tok->next ) && (isFloatSuffix (tok->next ) || (tok->next && tok->next ->startsWithOneOf (" AaBbCcDdEeFfPp" ) && !isAlternativeAndBitandBitor (tok->next )))) {
13761378 tok->setstr (tok->str () + tok->next ->str ());
1379+ tok->whitespaceahead = tok->next ->whitespaceahead ;
13771380 deleteToken (tok->next );
13781381 }
13791382 }
13801383 if (tok->next && tok->next ->number ) {
13811384 tok->setstr (tok->str () + tok->next ->str ());
1385+ tok->whitespaceahead = tok->next ->whitespaceahead ;
13821386 deleteToken (tok->next );
13831387 }
13841388 }
@@ -1389,7 +1393,9 @@ void simplecpp::TokenList::combineOperators()
13891393 (isHex (tok->str ()) && (lastChar == ' P' || lastChar == ' p' ))) &&
13901394 tok->next && tok->next ->isOneOf (" +-" ) && tok->next ->next && tok->next ->next ->number ) {
13911395 tok->setstr (tok->str () + tok->next ->op + tok->next ->next ->str ());
1396+ tok->whitespaceahead = tok->next ->whitespaceahead ;
13921397 deleteToken (tok->next );
1398+ tok->whitespaceahead = tok->next ->whitespaceahead ;
13931399 deleteToken (tok->next );
13941400 }
13951401
@@ -1406,21 +1412,27 @@ void simplecpp::TokenList::combineOperators()
14061412 if (tok->op == ' &' && !executableScope.top () && isAnonymousReferenceParameter (tok))
14071413 continue ;
14081414 tok->setstr (tok->str () + " =" );
1415+ tok->whitespaceahead = tok->next ->whitespaceahead ;
14091416 deleteToken (tok->next );
14101417 } else if ((tok->op == ' |' || tok->op == ' &' ) && tok->op == tok->next ->op ) {
14111418 tok->setstr (tok->str () + tok->next ->str ());
1419+ tok->whitespaceahead = tok->next ->whitespaceahead ;
14121420 deleteToken (tok->next );
14131421 } else if (tok->op == ' :' && tok->next ->op == ' :' ) {
14141422 tok->setstr (tok->str () + tok->next ->str ());
1423+ tok->whitespaceahead = tok->next ->whitespaceahead ;
14151424 deleteToken (tok->next );
14161425 } else if (tok->op == ' -' && tok->next ->op == ' >' ) {
14171426 tok->setstr (tok->str () + tok->next ->str ());
1427+ tok->whitespaceahead = tok->next ->whitespaceahead ;
14181428 deleteToken (tok->next );
14191429 } else if ((tok->op == ' <' || tok->op == ' >' ) && tok->op == tok->next ->op ) {
14201430 tok->setstr (tok->str () + tok->next ->str ());
1431+ tok->whitespaceahead = tok->next ->whitespaceahead ;
14211432 deleteToken (tok->next );
14221433 if (tok->next && tok->next ->op == ' =' && tok->next ->next && tok->next ->next ->op != ' =' ) {
14231434 tok->setstr (tok->str () + tok->next ->str ());
1435+ tok->whitespaceahead = tok->next ->whitespaceahead ;
14241436 deleteToken (tok->next );
14251437 }
14261438 } else if ((tok->op == ' +' || tok->op == ' -' ) && tok->op == tok->next ->op ) {
@@ -1431,6 +1443,7 @@ void simplecpp::TokenList::combineOperators()
14311443 if (tok->next ->next && tok->next ->next ->number )
14321444 continue ;
14331445 tok->setstr (tok->str () + tok->next ->str ());
1446+ tok->whitespaceahead = tok->next ->whitespaceahead ;
14341447 deleteToken (tok->next );
14351448 }
14361449 }
0 commit comments