summaryrefslogtreecommitdiffstats
path: root/src/fortranscanner.l
diff options
context:
space:
mode:
Diffstat (limited to 'src/fortranscanner.l')
-rw-r--r--src/fortranscanner.l6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/fortranscanner.l b/src/fortranscanner.l
index 285bc24..12104c0 100644
--- a/src/fortranscanner.l
+++ b/src/fortranscanner.l
@@ -325,7 +325,7 @@ ATTR_STMT {ATTR_SPEC}|DIMENSION|{ACCESS_SPEC}
yy_push_state(InterfaceBody);
startScope(last_entry);
}
-<InterfaceBody>"end"({BS_}"interface")?.* {
+<InterfaceBody>^{BS}"end"({BS_}"interface")? {
if (!endScope(current_root))
yyterminate();
yy_pop_state();
@@ -349,7 +349,7 @@ ATTR_STMT {ATTR_SPEC}|DIMENSION|{ACCESS_SPEC}
BEGIN(Module);
defaultProtection = Public;
}
-<Start,ModuleBody>"end"({BS_}(module|program))?.* { // end module
+<Start,ModuleBody>^{BS}"end"({BS_}(module|program))?{BS} { // end module
resolveModuleProcedures(moduleProcedures, current_root);
if (!endScope(current_root))
yyterminate();
@@ -415,7 +415,7 @@ ATTR_STMT {ATTR_SPEC}|DIMENSION|{ACCESS_SPEC}
/*------- module/global/typedef variable ---------------------------------------------------*/
-<SubprogBody>"end"({BS_}{SUBPROG})?.* {
+<SubprogBody>^{BS}"end"({BS_}{SUBPROG})?{BS} {
//cout << "1e=========> got end subprog: " << yytext << endl;
/* args is used for parameters in list of functions, argList for