summaryrefslogtreecommitdiffstats
path: root/src/defargs.l
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2019-12-20 09:35:14 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2019-12-20 09:35:14 (GMT)
commit0fc0de19ba79068ff7b6bad1e161393adcd865b8 (patch)
tree23b4ca50c2896a87b03cb52625256a6939af2fff /src/defargs.l
parent7cf6e640540954d974374b28f692e4d05ef22049 (diff)
downloadDoxygen-0fc0de19ba79068ff7b6bad1e161393adcd865b8.zip
Doxygen-0fc0de19ba79068ff7b6bad1e161393adcd865b8.tar.gz
Doxygen-0fc0de19ba79068ff7b6bad1e161393adcd865b8.tar.bz2
issue #7446: C#: parameter named `extends` is broken in the documentation
Diffstat (limited to 'src/defargs.l')
-rw-r--r--src/defargs.l17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/defargs.l b/src/defargs.l
index eb454ce..9745f44 100644
--- a/src/defargs.l
+++ b/src/defargs.l
@@ -86,6 +86,7 @@ static int g_lastDocContext;
static int g_lastDocChar;
static int g_lastExtendsContext;
static QCString g_delimiter;
+static SrcLangExt g_lang;
static const char *stateToString(int state);
/* -----------------------------------------------------------------
@@ -481,9 +482,16 @@ RAWEND ")"[^ \t\(\)\\]{0,16}\"
}
}
<ReadFuncArgType,ReadFuncArgPtr>"extends" {
- g_curTypeConstraint.resize(0);
- g_lastExtendsContext=YY_START;
- BEGIN(ReadTypeConstraint);
+ if (g_lang!=SrcLangExt_Java)
+ {
+ REJECT;
+ }
+ else
+ {
+ g_curTypeConstraint.resize(0);
+ g_lastExtendsContext=YY_START;
+ BEGIN(ReadTypeConstraint);
+ }
}
<ReadFuncArgType,ReadFuncArgPtr>"$"?{ID} {
QCString name=yytext; //resolveDefines(yytext);
@@ -601,7 +609,7 @@ RAWEND ")"[^ \t\(\)\\]{0,16}\"
* for complex types are written to
*/
-void stringToArgumentList(const char *argsString,ArgumentList& al,QCString *extraTypeChars)
+void stringToArgumentList(SrcLangExt lang, const char *argsString,ArgumentList& al,QCString *extraTypeChars)
{
if (argsString==0) return;
printlex(yy_flex_debug, TRUE, __FILE__, NULL);
@@ -623,6 +631,7 @@ void stringToArgumentList(const char *argsString,ArgumentList& al,QCString *extr
g_curArgDefValue.resize(0);
g_curArgName.resize(0);
g_argList = &al;
+ g_lang = lang;
defargsYYrestart( defargsYYin );
BEGIN( Start );
defargsYYlex();