summaryrefslogtreecommitdiffstats
path: root/src/pre.l
diff options
context:
space:
mode:
authordimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2003-04-30 19:40:09 (GMT)
committerdimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2003-04-30 19:40:09 (GMT)
commita9f41d99f3651cd66850e9020bc3af7cb559306e (patch)
tree88964bce49d3ab4b0f329d945d43a87b443ed019 /src/pre.l
parentebd0447bcc5d3d75214c847954bfda1d2e8c97f5 (diff)
downloadDoxygen-a9f41d99f3651cd66850e9020bc3af7cb559306e.zip
Doxygen-a9f41d99f3651cd66850e9020bc3af7cb559306e.tar.gz
Doxygen-a9f41d99f3651cd66850e9020bc3af7cb559306e.tar.bz2
Release-1.3-20030430
Diffstat (limited to 'src/pre.l')
-rw-r--r--src/pre.l17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/pre.l b/src/pre.l
index 7c85873..667f272 100644
--- a/src/pre.l
+++ b/src/pre.l
@@ -560,7 +560,11 @@ static bool replaceFunctionMacro(const QCString &expr,QCString *rest,int pos,int
}
else
{
- if (g_nospaces)
+ if (hash && substArg.isEmpty())
+ {
+ resExpr+="@E"; // empty argument will be remove later on
+ }
+ else if (g_nospaces)
{
resExpr+=substArg;
}
@@ -715,10 +719,9 @@ static void expandExpression(QCString &expr,QCString *rest,int pos)
}
}
-/*! replaces all occurrences of @@ in \a s by @
+/*! replaces all occurrences of @@@@ in \a s by @@
+ * and removes all occurrences of @@E.
* All identifiers found are replaced by 0L
- * \par assumption:
- * \a s only contains pairs of @@'s.
*/
QCString removeIdsAndMarkers(const char *s)
{
@@ -731,12 +734,16 @@ QCString removeIdsAndMarkers(const char *s)
{
while ((c=*p))
{
- if (c=='@') // replace @@ with @
+ if (c=='@') // replace @@ with @ and remove @E
{
if (*(p+1)=='@')
{
result+=c;
}
+ else if (*(p+1)=='E')
+ {
+ // skip
+ }
p+=2;
}
else if (isdigit(c)) // number