summaryrefslogtreecommitdiffstats
path: root/src/fortrancode.l
diff options
context:
space:
mode:
authordimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2008-01-23 21:30:39 (GMT)
committerdimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2008-01-23 21:30:39 (GMT)
commit38c6a14b15d87348076be142abea8663009ace82 (patch)
treed75127a33593cfe4d77e951e6df541294dc1e9b4 /src/fortrancode.l
parentd37b4be374f200ce57ee228d0f33e52e10add15f (diff)
downloadDoxygen-38c6a14b15d87348076be142abea8663009ace82.zip
Doxygen-38c6a14b15d87348076be142abea8663009ace82.tar.gz
Doxygen-38c6a14b15d87348076be142abea8663009ace82.tar.bz2
Release-1.5.4-20080123
Diffstat (limited to 'src/fortrancode.l')
-rw-r--r--src/fortrancode.l12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/fortrancode.l b/src/fortrancode.l
index 63fdb0a..a2a3ad8 100644
--- a/src/fortrancode.l
+++ b/src/fortrancode.l
@@ -581,8 +581,8 @@ ARGS {BS}("("[^)]*")"){BS}
NUM_TYPE (complex|integer|logical|real)
KIND {ARGS}
-CHAR (CHARACTER{ARGS}?|CHARACTER{BS}"*"([0-9]+|{ARGS}))
-TYPE_SPEC (({NUM_TYPE}("*"[0-9]+)?)|({NUM_TYPE}{KIND})|DOUBLE{BS}PRECISION|{CHAR})
+CHAR (CHARACTER{ARGS}?|CHARACTER{BS}"*"({BS}[0-9]+|{ARGS}))
+TYPE_SPEC (({NUM_TYPE}({BS}"*"{BS}[0-9]+)?)|({NUM_TYPE}{KIND})|DOUBLE{B}PRECISION|{CHAR})
INTENT_SPEC intent{BS}"("{BS}(in|out|in{BS}out){BS}")"
ATTR_SPEC (ALLOCATABLE|DIMENSION{ARGS}|EXTERNAL|{INTENT_SPEC}|INTRINSIC|OPTIONAL|PARAMETER|POINTER|PRIVATE|PUBLIC|SAVE|TARGET)
@@ -630,7 +630,7 @@ IGNORE (IMPLICIT{BS}NONE|CONTAINS|WRITE|READ|ALLOCATE|DEALLOCATE|SIZE)
codifyLines(yytext);
endFontClass();
}
-<Start>"end"{BS}{COMMANDS}/[ \t\n].* {
+<Start>"end"({BS_}{COMMANDS})?/[ \t\n].* {
startFontClass("keyword");
codifyLines(yytext);
endFontClass();
@@ -687,11 +687,11 @@ IGNORE (IMPLICIT{BS}NONE|CONTAINS|WRITE|READ|ALLOCATE|DEALLOCATE|SIZE)
yy_pop_state();
REJECT;
}
-<Start>"end"{BS}"module".* { // just reset currentModule, rest is done in following rule
+<Start>"end"({BS_}"module")?.* { // just reset currentModule, rest is done in following rule
currentModule=0;
REJECT;
}
-<Start>"end"{BS}("program"|"module"|"type"|"interface") { //
+<Start>"end"({BS_}("program"|"module"|"type"|"interface"))? { //
endUseScope();
startFontClass("keyword");
codifyLines(yytext);
@@ -722,7 +722,7 @@ IGNORE (IMPLICIT{BS}NONE|CONTAINS|WRITE|READ|ALLOCATE|DEALLOCATE|SIZE)
<Subprog>"\n" { codifyLines(yytext);
yy_pop_state();
}
-<Start>"end"{BS}{SUBPROG}.* { // Fortran subroutine or function ends
+<Start>"end"({BS_}{SUBPROG})? { // Fortran subroutine or function ends
//cout << "===> end function " << yytext << endl;
endUseScope();
startFontClass("keyword");