From 31a668c8c8ad29119158b140c34f67940dfeb7ed Mon Sep 17 00:00:00 2001 From: albert-github Date: Thu, 30 May 2019 13:50:14 +0200 Subject: Conflict between RCS tag and (e.g.) php description In some languages the `$` is used to start a variable name (php, perl). When having a description like: ``` $RRDp::error_mode, $RRDp::error ``` this will lead to a message like: ``` warning: found at different nesting level (4) than expected (2) ``` because the part `$RRDp:` is seen as start of a RCS tag and runs till the next `$`. Though the `::` indicates here a class / namespace separator and in case of `$...:` directly followed by a `:` this should not be seen as RCS tag. --- src/doctokenizer.l | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/doctokenizer.l b/src/doctokenizer.l index 7b402ca..e4c2f28 100644 --- a/src/doctokenizer.l +++ b/src/doctokenizer.l @@ -658,7 +658,7 @@ REFWORD_NOCV {FILEMASK}|{LABELID}|{REFWORD2_NOCV}|{REFWORD3}|{REFWORD4_NOCV} g_token->isEMailAddr=TRUE; return TK_URL; } -"$"{ID}":"[^\n$]+"$" { /* RCS tag */ +"$"{ID}":"[^:\n$][^\n$]*"$" { /* RCS tag */ QCString tagName(yytext+1); int index=tagName.find(':'); g_token->name = tagName.left(index); -- cgit v0.12