diff options
author | Dimitri van Heesch <doxygen@gmail.com> | 2020-04-24 06:27:22 (GMT) |
---|---|---|
committer | Dimitri van Heesch <doxygen@gmail.com> | 2020-04-24 07:03:09 (GMT) |
commit | 9e2b6a2dac870b5daabde118c5327281e3f79ba2 (patch) | |
tree | 39e49bae6eeb116f19be64a19eb9d3ff26a6c36c /src/classdef.cpp | |
parent | cd581388f3d013c501e3cefbaf3e81cf93d46fcb (diff) | |
download | Doxygen-9e2b6a2dac870b5daabde118c5327281e3f79ba2.zip Doxygen-9e2b6a2dac870b5daabde118c5327281e3f79ba2.tar.gz Doxygen-9e2b6a2dac870b5daabde118c5327281e3f79ba2.tar.bz2 |
Performance improvements after profiling
In some cases performance dropped when upgrading from version 1.8.16 to 1.8.17 or 1.8.18.
With these changes the performance should be back to normal again.
Diffstat (limited to 'src/classdef.cpp')
-rw-r--r-- | src/classdef.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/classdef.cpp b/src/classdef.cpp index 52d2f49..5670109 100644 --- a/src/classdef.cpp +++ b/src/classdef.cpp @@ -3665,8 +3665,8 @@ void ClassDefImpl::mergeMembers() ArgumentList &srcAl = srcMd->argumentList(); ArgumentList &dstAl = dstMd->argumentList(); found=matchArguments2( - srcMd->getOuterScope(),srcMd->getFileDef(),srcAl, - dstMd->getOuterScope(),dstMd->getFileDef(),dstAl, + srcMd->getOuterScope(),srcMd->getFileDef(),&srcAl, + dstMd->getOuterScope(),dstMd->getFileDef(),&dstAl, TRUE ); //printf(" Yes, matching (%s<->%s): %d\n", @@ -4254,11 +4254,10 @@ void ClassDefImpl::addMembersToTemplateInstance(const ClassDef *cd,const char *t MemberInfo *mi; for (mnii.toFirst();(mi=mnii.current());++mnii) { - ArgumentList actualArguments; - stringToArgumentList(getLanguage(),templSpec,actualArguments); + auto actualArguments_p = stringToArgumentList(getLanguage(),templSpec); MemberDef *md = mi->memberDef; std::unique_ptr<MemberDef> imd { md->createTemplateInstanceMember( - cd->templateArguments(),actualArguments) }; + cd->templateArguments(),actualArguments_p) }; //printf("%s->setMemberClass(%p)\n",imd->name().data(),this); imd->setMemberClass(this); imd->setTemplateMaster(md); |