diff options
author | Dimitri van Heesch <doxygen@gmail.com> | 2019-10-09 17:15:29 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-10-09 17:15:29 (GMT) |
commit | 61b1b96e454ce94414e242c3d61d7bf6400269f8 (patch) | |
tree | 6db42213244dabd61433aa206e97ca52fe9d7c71 | |
parent | 24b30300000cc14798cb7665a50094df7c1668e3 (diff) | |
parent | 148162e48b8337fafffc61e5a1b5cdf86077d6ac (diff) | |
download | Doxygen-61b1b96e454ce94414e242c3d61d7bf6400269f8.zip Doxygen-61b1b96e454ce94414e242c3d61d7bf6400269f8.tar.gz Doxygen-61b1b96e454ce94414e242c3d61d7bf6400269f8.tar.bz2 |
Merge pull request #7303 from albert-github/feature/issue_7302
issue 7302: Parsing of template args in single-quotes is incorrect.
-rw-r--r-- | src/scanner.l | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/scanner.l b/src/scanner.l index d8062e7..2310479 100644 --- a/src/scanner.l +++ b/src/scanner.l @@ -751,6 +751,8 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP}) %x GCopyCurly %x SkipUnionSwitch %x Specialization +%x SpecializationSingleQuote +%x SpecializationDoubleQuote %x FuncPtrInit %x FuncFunc %x FuncFuncEnd @@ -6145,6 +6147,19 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP}) <Specialization>"typename"{BN}+ { lineCount(); } <Specialization>"(" { *specName += *yytext; roundCount++; } <Specialization>")" { *specName += *yytext; roundCount--; } + +<Specialization>"\\\\" { *specName += *yytext;} +<Specialization>"\\'" { *specName += *yytext;} +<Specialization>"\\\"" { *specName += *yytext;} +<Specialization>"'" { *specName += *yytext;BEGIN(SpecializationSingleQuote);} +<Specialization>"\"" { *specName += *yytext;BEGIN(SpecializationDoubleQuote);} +<SpecializationSingleQuote,SpecializationDoubleQuote>"\\\\" { *specName += *yytext;} +<SpecializationSingleQuote>"\\'" { *specName += *yytext;} +<SpecializationSingleQuote>"'" { *specName += *yytext; BEGIN(Specialization);} +<SpecializationDoubleQuote>"\\\"" { *specName += *yytext;} +<SpecializationDoubleQuote>"\"" { *specName += *yytext; BEGIN(Specialization);} +<SpecializationSingleQuote,SpecializationDoubleQuote>. { *specName += *yytext;} + <Specialization>. { *specName += *yytext; } |