Skip to content

Commit 4dfc588

Browse files
author
Dimitri van Heesch
committed
Bug 722654 - Inherited member of template class issues warning and is not documented
1 parent 3911ebd commit 4dfc588

File tree

2 files changed

+13
-8
lines changed

2 files changed

+13
-8
lines changed

src/doxygen.cpp

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11221,10 +11221,6 @@ void parseInput()
1122111221
flushCachedTemplateRelations();
1122211222
g_s.end();
1122311223

11224-
g_s.begin("Creating members for template instances...\n");
11225-
createTemplateInstanceMembers();
11226-
g_s.end();
11227-
1122811224
g_s.begin("Computing class relations...\n");
1122911225
computeTemplateClassRelations();
1123011226
flushUnresolvedRelations();
@@ -11249,6 +11245,12 @@ void parseInput()
1124911245
transferFunctionDocumentation();
1125011246
g_s.end();
1125111247

11248+
// moved to after finding and copying documentation,
11249+
// as this introduces new members see bug 722654
11250+
g_s.begin("Creating members for template instances...\n");
11251+
createTemplateInstanceMembers();
11252+
g_s.end();
11253+
1125211254
g_s.begin("Building page list...\n");
1125311255
buildPageList(rootNav);
1125411256
g_s.end();

src/memberdef.cpp

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1602,11 +1602,13 @@ void MemberDef::writeDeclaration(OutputList &ol,
16021602
// *** write name
16031603
if (!name().isEmpty() && name().at(0)!='@') // hide anonymous stuff
16041604
{
1605-
//printf("Member name=`%s gd=%p md->groupDef=%p inGroup=%d isLinkable()=%d\n",name().data(),gd,getGroupDef(),inGroup,isLinkable());
1605+
static bool extractPrivate = Config_getBool("EXTRACT_PRIVATE");
1606+
static bool extractStatic = Config_getBool("EXTRACT_STATIC");
1607+
//printf("Member name=`%s gd=%p md->groupDef=%p inGroup=%d isLinkable()=%d hasDocumentation=%d\n",name().data(),gd,getGroupDef(),inGroup,isLinkable(),hasDocumentation());
16061608
if (!(name().isEmpty() || name().at(0)=='@') && // name valid
16071609
(hasDocumentation() || isReference()) && // has docs
1608-
!(m_impl->prot==Private && !Config_getBool("EXTRACT_PRIVATE") && m_impl->mtype!=MemberType_Friend) && // hidden due to protection
1609-
!(isStatic() && m_impl->classDef==0 && !Config_getBool("EXTRACT_STATIC")) // hidden due to static-ness
1610+
!(m_impl->prot==Private && !extractPrivate && m_impl->mtype!=MemberType_Friend) && // hidden due to protection
1611+
!(isStatic() && m_impl->classDef==0 && !extractStatic) // hidden due to static-ness
16101612
)
16111613
{
16121614
if (m_impl->annMemb)
@@ -1817,7 +1819,8 @@ void MemberDef::writeDeclaration(OutputList &ol,
18171819
ol.disableAllBut(OutputGenerator::Html);
18181820
//ol.endEmphasis();
18191821
ol.docify(" ");
1820-
if (separateMemberPages ||
1822+
if (inheritedFrom ||
1823+
separateMemberPages ||
18211824
(m_impl->group!=0 && gd==0) ||
18221825
(m_impl->nspace!=0 && nd==0)
18231826
) // forward link to the page or group or namespace

0 commit comments

Comments
 (0)