summaryrefslogtreecommitdiffstats
path: root/src/pre.l
diff options
context:
space:
mode:
authordimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2010-05-07 19:37:33 (GMT)
committerdimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2010-05-07 19:37:33 (GMT)
commit0fb3f32dfd7ac31a2677d76647700cd3fb730ef6 (patch)
tree58636054e8f52c5851109b908053cc4da26b060a /src/pre.l
parent600fbfb8b03442ff97f4fb94964b2e0e11d14bd4 (diff)
downloadDoxygen-0fb3f32dfd7ac31a2677d76647700cd3fb730ef6.zip
Doxygen-0fb3f32dfd7ac31a2677d76647700cd3fb730ef6.tar.gz
Doxygen-0fb3f32dfd7ac31a2677d76647700cd3fb730ef6.tar.bz2
Release-1.6.3-20100507
Diffstat (limited to 'src/pre.l')
-rw-r--r--src/pre.l12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/pre.l b/src/pre.l
index 1f8316f..784c8b2 100644
--- a/src/pre.l
+++ b/src/pre.l
@@ -1500,7 +1500,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
if ((g_includeStack.isEmpty() || g_curlyCount>0) &&
g_macroExpansion &&
(def=g_fileDefineDict->find(yytext)) &&
- macroIsAccessible(def) &&
+ (def->isPredefined || macroIsAccessible(def)) &&
(!g_expandOnlyPredef || def->isPredefined)
)
{
@@ -1509,7 +1509,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
g_defArgsStr=yytext;
if (def->nargs==-1) // no function macro
{
- QCString result = expandMacro(g_defArgsStr);
+ QCString result = def->isPredefined ? def->definition : expandMacro(g_defArgsStr);
outputArray(result,result.length());
}
else // zero or more arguments
@@ -1525,19 +1525,15 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
}
<CopyLine>{ID} {
Define *def=0;
- //printf("Search for define %s\n",yytext);
if ((g_includeStack.isEmpty() || g_curlyCount>0) &&
g_macroExpansion &&
(def=g_fileDefineDict->find(yytext)) &&
def->nargs==-1 &&
- macroIsAccessible(def) &&
+ (def->isPredefined || macroIsAccessible(def)) &&
(!g_expandOnlyPredef || def->isPredefined)
)
{
- //printf("Found it!\n");
- QCString name=yytext;
- QCString result=expandMacro(name);
- //printf("result=`%s'\n",result.data());
+ QCString result=def->isPredefined ? def->definition : expandMacro(yytext);
outputArray(result,result.length());
}
else