summaryrefslogtreecommitdiffstats
path: root/src/scanner.l
diff options
context:
space:
mode:
Diffstat (limited to 'src/scanner.l')
-rw-r--r--src/scanner.l14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/scanner.l b/src/scanner.l
index 087c258..eba34de 100644
--- a/src/scanner.l
+++ b/src/scanner.l
@@ -22,7 +22,7 @@
*/
#include <stdio.h>
#include <stdlib.h>
-#include <iostream.h>
+//#include <iostream.h>
#include <assert.h>
#include <ctype.h>
@@ -727,9 +727,11 @@ TITLE [tT][iI][tT][lL][eE]
<FindMembers>{B}*"explicit"{BN}+ { current->memSpec|=Entry::Explicit;
lineCount();
}
+ /*
<FindMembers>{B}*"import"{BN}+ { // IDL import keyword
BEGIN( NextSemi );
}
+ */
<FindMembers>{B}*"typename"{BN}+ { lineCount(); }
<FindMembers>{B}*"namespace"{BN}*/[^a-z_A-Z0-9] {
isTypedef=FALSE;
@@ -1035,7 +1037,9 @@ TITLE [tT][iI][tT][lL][eE]
}
<FindMembers,FindMemberName>{SCOPENAME} {
// correct for misinterpreting return type as scope name: example: A<T> func()
- if (YY_START==FindMembers && current->tArgList && current->mtArgList==0)
+ //printf("YY_START=%d current->tArgList=%p current->mtArgList=%p\n",
+ // YY_START,current->tArgList,current->mtArgList);
+ if (YY_START==FindMembers /*&& current->tArgList*/ && current->mtArgList==0)
{
current->mtArgList=current->tArgList;
current->tArgList=0;
@@ -1046,6 +1050,10 @@ TITLE [tT][iI][tT][lL][eE]
{
BEGIN(CppQuote);
}
+ else if (insideIDL && yyleng==6 && strcmp(yytext,"import")==0)
+ {
+ BEGIN(NextSemi);
+ }
else if (insideIDL && strcmp(yytext,"case")==0)
{
BEGIN(IDLUnionCase);
@@ -3400,7 +3408,7 @@ TITLE [tT][iI][tT][lL][eE]
<DocBaseClass>{ID} {
//printf("Adding base class %s\n",yytext);
current->extends->append(
- new BaseInfo(yytext,Public,Normal)
+ new BaseInfo(removeRedundantWhiteSpace(yytext),Public,Normal)
);
}
<DocBaseClass>\n { yyLineNr++; BEGIN( ClassDoc ); }