summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoralbert-github <albert.tests@gmail.com>2021-05-21 13:13:54 (GMT)
committeralbert-github <albert.tests@gmail.com>2021-05-21 13:13:54 (GMT)
commitee8fda1679a3facadbddb3c52ee177bb1d4cd16d (patch)
tree822ed94494cfa2ef0491655c68a7deea514a05f8
parent525f577318783e9cba89b473c11b770a03760fbc (diff)
downloadDoxygen-ee8fda1679a3facadbddb3c52ee177bb1d4cd16d.zip
Doxygen-ee8fda1679a3facadbddb3c52ee177bb1d4cd16d.tar.gz
Doxygen-ee8fda1679a3facadbddb3c52ee177bb1d4cd16d.tar.bz2
Using spaces in a PREDEFINED setting
When having in the settings: ``` PREDEFINED += "HELP_DOT_SPACE( xs , ys , ... )=enum class xs { ys, __VA_ARGS__}" ``` we expect that the result is similar to when using a PREDEFINED setting: ``` #define LOC_SPACE( xs , ys , ... ) enum class xs { ys, __VA_ARGS__} ``` this is not the case especially due to the space after the last named argument. We see that when we have: ``` LOC_SPACE(locSpace2, last); ``` we get ``` enum class locSpace2 { last } ``` and when having: ``` HELP_DOT_SPACE(dotSpace2, last); ``` we get: ``` HELP_DOT_SPACE (dotSpace2, last) ```
-rw-r--r--src/pre.l8
1 files changed, 1 insertions, 7 deletions
diff --git a/src/pre.l b/src/pre.l
index 8ea3974..efdf2ff 100644
--- a/src/pre.l
+++ b/src/pre.l
@@ -3258,22 +3258,16 @@ static void initPredefined(yyscan_t yyscanner,const QCString &fileName)
size_t i=i_obrace+1;
//printf("predefined function macro '%s'\n",ds.c_str());
int count = 0;
- reg::Iterator arg_it(ds,reId,i);
+ reg::Iterator arg_it(args,reId,0);
// gather the formal arguments in a dictionary
while (i<i_cbrace && arg_it!=end)
{
const auto &match = *arg_it;
- size_t pi = match.position();
size_t l = match.length();
if (l>0) // see bug375037
{
argMap.emplace(match.str(),count);
count++;
- i=pi+l;
- }
- else
- {
- i++;
}
++arg_it;
}