summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2016-09-05 10:45:40 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2016-09-05 10:45:40 (GMT)
commitd9166baf589f50e94597829b04d0cabee4573130 (patch)
treeb2f882a997d5454e32508e35b68489f4c26d9953 /src
parentb721f6e1707f8cc446c0d7f9956e6d4aa9f17bc9 (diff)
downloadDoxygen-d9166baf589f50e94597829b04d0cabee4573130.zip
Doxygen-d9166baf589f50e94597829b04d0cabee4573130.tar.gz
Doxygen-d9166baf589f50e94597829b04d0cabee4573130.tar.bz2
Fixed two regressions found during extensive testing
Diffstat (limited to 'src')
-rw-r--r--src/doxygen.cpp10
-rwxr-xr-xsrc/util.cpp8
2 files changed, 13 insertions, 5 deletions
diff --git a/src/doxygen.cpp b/src/doxygen.cpp
index 07214cb..d649ce5 100644
--- a/src/doxygen.cpp
+++ b/src/doxygen.cpp
@@ -2052,10 +2052,16 @@ static void findUsingDeclarations(EntryNav *rootNav)
// file scope).
QCString name = substitute(root->name,".","::"); //Java/C# scope->internal
- usingCd = getResolvedClass(nd,fd,name);
+ usingCd = getClass(name); // try direct lookup first, this is needed to get
+ // builtin STL classes to properly resolve, e.g.
+ // vector -> std::vector
if (usingCd==0)
{
- usingCd = Doxygen::hiddenClasses->find(name);
+ usingCd = getResolvedClass(nd,fd,name); // try via resolving (see also bug757509)
+ }
+ if (usingCd==0)
+ {
+ usingCd = Doxygen::hiddenClasses->find(name); // check if it is already hidden
}
//printf("%s -> %p\n",root->name.data(),usingCd);
diff --git a/src/util.cpp b/src/util.cpp
index f1ebf8b..3593c9d 100755
--- a/src/util.cpp
+++ b/src/util.cpp
@@ -1887,9 +1887,10 @@ QCString removeRedundantWhiteSpace(const QCString &s)
{
if (g_charAroundSpace.charMap[(uchar)pc].before &&
g_charAroundSpace.charMap[(uchar)nc].after &&
- !(pc==',' && nc=='.'))
- // remove spaces/tabs
- {
+ !(pc==',' && nc=='.') &&
+ (osp<8 || (osp>=8 && isId(nc))) // e.g. "operator >>" -> "operator>>", but not "operator int" -> operatorint"
+ )
+ { // keep space
*dst++=' ';
}
}
@@ -1915,6 +1916,7 @@ QCString removeRedundantWhiteSpace(const QCString &s)
pc=c;
}
*dst++='\0';
+ //printf("removeRedundantWhitespace(%s)->%s\n",s.data(),growBuf);
return growBuf;
}