diff options
author | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2003-05-24 19:12:41 (GMT) |
---|---|---|
committer | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2003-05-24 19:12:41 (GMT) |
commit | 9e1745a1714d4ece7d490918de2eb7ff2060453e (patch) | |
tree | 5225a8b9c0898f1f3f89c69611439a6c5af1d178 /src/doxygen.cpp | |
parent | 64200b5e975b19f38f9a68569b98c6f53e6fe4d9 (diff) | |
download | Doxygen-9e1745a1714d4ece7d490918de2eb7ff2060453e.zip Doxygen-9e1745a1714d4ece7d490918de2eb7ff2060453e.tar.gz Doxygen-9e1745a1714d4ece7d490918de2eb7ff2060453e.tar.bz2 |
Release-1.3-20030524
Diffstat (limited to 'src/doxygen.cpp')
-rw-r--r-- | src/doxygen.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/doxygen.cpp b/src/doxygen.cpp index 601ac2d..a386468 100644 --- a/src/doxygen.cpp +++ b/src/doxygen.cpp @@ -2133,9 +2133,16 @@ static void buildFunctionList(Entry *root) //printf("root->parent=`%s' cd=%p root->type.find(re,0)=%d\n", // root->parent->name.data(),getClass(root->parent->name), // root->type.find(re,0)); - QCString scope=stripAnonymousNamespaceScope(root->parent->name.copy()); + QCString scope=stripAnonymousNamespaceScope(root->parent->name); scope=stripTemplateSpecifiersFromScope(scope,FALSE); + cd=getClass(scope); + if (cd && scope+"::"==rname.left(scope.length()+2)) // found A::f inside A + { + // strip scope from name + rname=rname.right(rname.length()-root->parent->name.length()-2); + } + bool isMember=FALSE; int memIndex=rname.find("::"); if (memIndex!=-1) @@ -2154,7 +2161,7 @@ static void buildFunctionList(Entry *root) if (root->parent && !root->parent->name.isEmpty() && (root->parent->section & Entry::COMPOUND_MASK) && - (cd=getClass(scope)) && + cd && // do some fuzzy things to exclude function pointers (root->type.isEmpty() || root->type.find(re,0)==-1 || root->type.find(")(")!=-1 || root->type.find("operator")!=-1 @@ -4379,7 +4386,7 @@ static void findMember(Entry *root, { Debug::print(Debug::FindMembers,0, "1. funcName=`%s'\n",funcName.data()); - if (funcName.left(9)=="operator ") + if (funcName.left(9)=="operator ") // strip class scope from cast operator { funcName = substitute(funcName,className+"::",""); } |