summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/code.l23
-rw-r--r--src/doxygen.cpp3
2 files changed, 23 insertions, 3 deletions
diff --git a/src/code.l b/src/code.l
index 57bbff1..9d6f285 100644
--- a/src/code.l
+++ b/src/code.l
@@ -606,6 +606,7 @@ static void addDocCrossReference(MemberDef *src,MemberDef *dst)
{
src->addSourceReferences(dst);
}
+
}
static void generateClassOrGlobalLink(OutputDocInterface &ol,char *clName,int *clNameLen=0)
@@ -752,6 +753,22 @@ static bool generateClassMemberLink(OutputDocInterface &ol,ClassDef *mcd,const c
// xmd->typeString(),xmd->argsString(),
// xmd->getClassDef()->name().data());
+ if (g_exampleBlock)
+ {
+ QCString anchor;
+ anchor.sprintf("a%d",g_anchorCount);
+ //printf("addExampleFile(%s,%s,%s)\n",anchor.data(),g_exampleName.data(),
+ // g_exampleFile.data());
+ if (xmd->addExample(anchor,g_exampleName,g_exampleFile))
+ {
+ ol.pushGeneratorState();
+ ol.disable(OutputGenerator::Latex);
+ ol.writeAnchor(0,anchor);
+ ol.popGeneratorState();
+ g_anchorCount++;
+ }
+ }
+
g_theCallContext.setClass(stripClassName(xmd->typeString()));
Definition *xd = xmd->getOuterScope()==Doxygen::globalScope ?
@@ -771,6 +788,7 @@ static bool generateClassMemberLink(OutputDocInterface &ol,ClassDef *mcd,const c
xd->getOutputFileBase(),xmd->getBodyAnchor(),memName);
return TRUE;
}
+
}
}
@@ -1081,7 +1099,7 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
g_type.resize(0);
g_name.resize(0);
}
-<Body>"}" {
+<Body,MemberCall,MemberCall2>"}" {
g_theVarContext.popScope();
if (g_scopeStack.pop()==SCOPEBLOCK)
@@ -1099,6 +1117,7 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
g_currentMemberDef=0;
g_currentDefinition=0;
}
+ BEGIN(Body);
}
<ClassName,ClassVar>";" {
g_code->codify(yytext);
@@ -1629,7 +1648,7 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
generateClassOrGlobalLink(*g_code,yytext);
BEGIN( MemberCall2 );
}
-<FuncCall,MemberCall2>("("{B}*("*"{B}*)*[a-z_A-Z][a-z_A-Z0-9]*{B}*")"{B}*)/("."|"->") {
+<FuncCall,MemberCall2>("("{B}*("*"{B}*)+[a-z_A-Z][a-z_A-Z0-9]*{B}*")"{B}*)/("."|"->") {
g_code->codify(yytext);
int s=0;while (!isId(yytext[s])) s++;
int e=yyleng-1;while (!isId(yytext[e])) e--;
diff --git a/src/doxygen.cpp b/src/doxygen.cpp
index b3ea9ae..0bbe32e 100644
--- a/src/doxygen.cpp
+++ b/src/doxygen.cpp
@@ -3077,7 +3077,8 @@ static void computeClassRelations()
{
findBaseClassesForClass(root,cd,cd,DocumentedOnly,FALSE);
}
- if ((cd==0 || !cd->hasDocumentation()) && bName.right(2)!="::")
+ if ((cd==0 || (!cd->hasDocumentation() && !cd->isReference())) &&
+ bName.right(2)!="::")
{
if (!root->name.isEmpty() && root->name[0]!='@')
warn_undoc(