summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/declinfo.l1
-rw-r--r--src/scanner.l15
2 files changed, 12 insertions, 4 deletions
diff --git a/src/declinfo.l b/src/declinfo.l
index 2f497f9..014ef75 100644
--- a/src/declinfo.l
+++ b/src/declinfo.l
@@ -149,6 +149,7 @@ ID "$"?([a-z_A-Z\x80-\xFF][a-z_A-Z0-9\x80-\xFF]*)|(@[0-9]+)
addType(yyscanner);
}
<Start>{B}*"("({ID}"::")*{B}*[&*]({B}*("const"|"volatile"){B}+)? {
+ if (yyextra->insidePHP) REJECT;
addType(yyscanner);
QCString text=yytext;
yyextra->type+=text.stripWhiteSpace();
diff --git a/src/scanner.l b/src/scanner.l
index 70f15d6..e56f151 100644
--- a/src/scanner.l
+++ b/src/scanner.l
@@ -6506,10 +6506,17 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
BEGIN( ReadFuncArgType ) ;
}
<Prototype>"("({ID}"::")*({B}*[&*])+ {
- yyextra->current->type+=yyextra->current->name+yytext;
- yyextra->current->name.resize(0);
- BEGIN( PrototypePtr );
- }
+ if (yyextra->insidePHP) // reference parameter
+ {
+ REJECT;
+ }
+ else
+ {
+ yyextra->current->type+=yyextra->current->name+yytext;
+ yyextra->current->name.resize(0);
+ BEGIN( PrototypePtr );
+ }
+ }
<PrototypePtr>{SCOPENAME} {
yyextra->current->name+=yytext;
}