summaryrefslogtreecommitdiffstats
path: root/src/scanner.l
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2013-08-22 15:32:50 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2013-08-23 13:38:23 (GMT)
commit72edccb2a4d04382f07641cf09a0567fcf281e45 (patch)
tree3ff0273763bd3dca61edb6e82ba14cdd4db31ba2 /src/scanner.l
parent60b10c9eeacfbd20048a45afc132112ba01ae09a (diff)
downloadDoxygen-72edccb2a4d04382f07641cf09a0567fcf281e45.zip
Doxygen-72edccb2a4d04382f07641cf09a0567fcf281e45.tar.gz
Doxygen-72edccb2a4d04382f07641cf09a0567fcf281e45.tar.bz2
Bug 705702 - Post-comment blocks on C++11 using definitions attach to following entity
Diffstat (limited to 'src/scanner.l')
-rw-r--r--src/scanner.l31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/scanner.l b/src/scanner.l
index 7c21a43..40f653a 100644
--- a/src/scanner.l
+++ b/src/scanner.l
@@ -666,6 +666,7 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
%x ReadBodyIntf
%x Using
%x UsingAlias
+%x UsingAliasEnd
%x UsingDirective
%x SkipCurly
%x SkipCurlyCpp
@@ -1976,6 +1977,28 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
previous->spec |= Entry::Alias;
BEGIN(FindMembers);
}
+<UsingAlias>";"{BN}*("/**"|"//!"|"/*!"|"///")"<" {
+ docBlockContext = UsingAliasEnd;
+ docBlockInBody = FALSE;
+ docBlockAutoBrief = ( yytext[yyleng-2]=='*' && Config_getBool("JAVADOC_AUTOBRIEF") ) ||
+ ( yytext[yyleng-2]=='!' && Config_getBool("QT_AUTOBRIEF") );
+ QCString indent;
+ indent.fill(' ',computeIndent(yytext,g_column));
+ docBlock=indent;
+ lineCount();
+
+ docBlockTerm = ';';
+ if (yytext[yyleng-3]=='/')
+ {
+ startCommentBlock(TRUE);
+ BEGIN( DocLine );
+ }
+ else
+ {
+ startCommentBlock(FALSE);
+ BEGIN( DocBlock );
+ }
+ }
<UsingAlias>. {
previous->args+=yytext;
}
@@ -1983,6 +2006,14 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
previous->args+=yytext;
lineCount();
}
+<UsingAliasEnd>";" {
+ previous->doc = current->doc;
+ previous->brief = current->brief;
+ current->doc.resize(0);
+ current->brief.resize(0);
+ unput(';');
+ BEGIN(UsingAlias);
+ }
<UsingDirective>{SCOPENAME} { current->name=removeRedundantWhiteSpace(yytext);
current->fileName = yyFileName;
current->section=Entry::USINGDIR_SEC;