summaryrefslogtreecommitdiffstats
path: root/src/doctokenizer.l
diff options
context:
space:
mode:
authoralbert-github <albert.tests@gmail.com>2018-04-12 13:51:28 (GMT)
committeralbert-github <albert.tests@gmail.com>2018-04-12 13:51:28 (GMT)
commit5a9bfc176eb3da266f44bd5cb0b38975c812e49c (patch)
treebf81ca8b25d5c5374fb0687e7bb4cd91a9120b16 /src/doctokenizer.l
parent7e2fcd305c8c9377aa958a3d812cc31bc81c0e32 (diff)
downloadDoxygen-5a9bfc176eb3da266f44bd5cb0b38975c812e49c.zip
Doxygen-5a9bfc176eb3da266f44bd5cb0b38975c812e49c.tar.gz
Doxygen-5a9bfc176eb3da266f44bd5cb0b38975c812e49c.tar.bz2
Bug 740046 - Negative sign in -Foo::Bar ruins hyperlink in generated output
Excluded digits and '+' sign and '-' sign from determination of Words.
Diffstat (limited to 'src/doctokenizer.l')
-rw-r--r--src/doctokenizer.l5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/doctokenizer.l b/src/doctokenizer.l
index 90a8c55..fe49ab2 100644
--- a/src/doctokenizer.l
+++ b/src/doctokenizer.l
@@ -387,7 +387,8 @@ LNKWORD2 (({SCOPEPRE}*"operator"{OPMASK})|({SCOPEPRE}"operator"{OPMASKOPT})|(("
LNKWORD3 ([0-9a-z_A-Z\-]+("/"|"\\"))*[0-9a-z_A-Z\-]+("."[0-9a-z_A-Z]+)+
CHARWORDQ [^ \t\n\r\\@<>()\[\]:;\?{}&%$#,."=']
ESCWORD ("%"{ID}(("::"|"."){ID})*)|("%'")
-WORD1 {ESCWORD}|{CHARWORDQ}+|"{"|"}"|"'\"'"|("\""[^"\n]*\n?[^"\n]*"\"")
+CHARWORDQ1 [^ \-+0-9\t\n\r\\@<>()\[\]:;\?{}&%$#,."=']
+WORD1 {ESCWORD}|{CHARWORDQ1}+|"{"|"}"|"'\"'"|("\""[^"\n]*\n?[^"\n]*"\"")
WORD2 "."|","|"("|")"|"["|"]"|":"|";"|"\?"|"="|"'"
WORD1NQ {ESCWORD}|{CHARWORDQ}+|"{"|"}"
WORD2NQ "."|","|"("|")"|"["|"]"|":"|";"|"\?"|"="|"'"
@@ -696,6 +697,7 @@ REFWORD_NOCV {LABELID}|{REFWORD2_NOCV}|{REFWORD3}|{REFWORD4_NOCV}
}
/********* patterns for normal words ******************/
+<St_Para,St_Text>[\-+0-9] |
<St_Para,St_Text>{WORD1} |
<St_Para,St_Text>{WORD2} { /* function call */
if (yytext[0]=='%') // strip % if present
@@ -931,6 +933,7 @@ REFWORD_NOCV {LABELID}|{REFWORD2_NOCV}|{REFWORD3}|{REFWORD4_NOCV}
g_token->name = yytext;
return TK_WORD;
}
+<St_TitleN>[\-+0-9] |
<St_TitleN>{WORD1} |
<St_TitleN>{WORD2} { /* word */
if (yytext[0]=='%') // strip % if present