diff options
author | Dimitri van Heesch <doxygen@gmail.com> | 2019-03-16 19:06:02 (GMT) |
---|---|---|
committer | Dimitri van Heesch <doxygen@gmail.com> | 2019-03-16 19:06:02 (GMT) |
commit | 9fdeef7b5a1018872c7f07b8d03e374a3da840a0 (patch) | |
tree | de38a4bcd6dd0928dedab1f5f4f1ea24802a6065 /src/pre.l | |
parent | 3be582506ac7d11142417128a8f60f4532680618 (diff) | |
download | Doxygen-9fdeef7b5a1018872c7f07b8d03e374a3da840a0.zip Doxygen-9fdeef7b5a1018872c7f07b8d03e374a3da840a0.tar.gz Doxygen-9fdeef7b5a1018872c7f07b8d03e374a3da840a0.tar.bz2 |
at sign (`@`) not handled correctly in preprocessor
Diffstat (limited to 'src/pre.l')
-rw-r--r-- | src/pre.l | 15 |
1 files changed, 15 insertions, 0 deletions
@@ -1180,6 +1180,20 @@ QCString removeIdsAndMarkers(const char *s) p++; inNum=TRUE; } + else if (c=='\'') // quoted character + { + result+=c; + p++; + char pc=c; + while ((c=*p) && (c!='\'' || pc=='\\')) + { + result+=c; + pc=c; + p++; + } + result+=c; + p++; + } else if (c=='d' && !inNum) // identifier starting with a `d' { if (qstrncmp(p,"defined ",8)==0 || qstrncmp(p,"defined(",8)==0) @@ -2185,6 +2199,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'")) BEGIN(DefinedExpr1); } <Guard>{ID} { g_guardExpr+=yytext; } +<Guard>"@" { g_guardExpr+="@@"; } <Guard>. { g_guardExpr+=*yytext; } <Guard>\n { unput(*yytext); |