Blob Blame History Raw
commit e54ccc0e6eb12a0720860d863a89cb3f1a83f2a2
Author: Dimitri van Heesch <doxygen@gmail.com>
Date:   Sun Feb 3 14:33:35 2019 +0100

    Issue 6814: Inconsistent whitespace removal for operators in 1.8.15

diff --git a/src/util.cpp b/src/util.cpp
index 9a0e513b..3a3bfd38 100644
--- a/src/util.cpp
+++ b/src/util.cpp
@@ -1895,7 +1895,7 @@ QCString removeRedundantWhiteSpace(const QCString &s)
           if (g_charAroundSpace.charMap[(uchar)pc].before &&
               g_charAroundSpace.charMap[(uchar)nc].after  &&
               !(pc==',' && nc=='.') &&
-              (osp<8 || (osp>=8 && pc!='"' && isId(nc)) || (osp>=8 && pc!='"' && nc!='"'))
+              (osp<8 || (osp>=8 && isId(pc) && isId(nc)))
                   // e.g.    'operator >>' -> 'operator>>',
                   //         'operator "" _x' -> 'operator""_x',
                   // but not 'operator int' -> 'operatorint'
commit 2802e2b4ee8158dba3f3584037e99907c6db7ec4
Author: Dimitri van Heesch <doxygen@gmail.com>
Date:   Mon Feb 4 22:19:56 2019 +0100

    Issue 6814: Further finetuning for inconsistent whitespace removal for operators in 1.8.15

diff --git a/src/util.cpp b/src/util.cpp
index 3a3bfd38..53b176d4 100644
--- a/src/util.cpp
+++ b/src/util.cpp
@@ -1847,7 +1847,8 @@ QCString removeRedundantWhiteSpace(const QCString &s)
       case '*':
         if (i>0 && pc!=' ' && pc!='\t' && pc!=':' &&
                    pc!='*' && pc!='&'  && pc!='(' && pc!='/' &&
-                   pc!='.' && (osp<9 || !(pc=='>' && osp==11)))
+                   pc!='.' && osp<9
+           )
           // avoid splitting &&, **, .*, operator*, operator->*
         {
           *dst++=' ';
@@ -1855,7 +1856,7 @@ QCString removeRedundantWhiteSpace(const QCString &s)
         *dst++=c;
         break;
       case '&':
-        if (i>0 && isId(pc))
+        if (i>0 && isId(pc) && osp<9)
         {
           if (nc != '=')
           // avoid splitting operator&=