diff options
author | Dimitri van Heesch <dimitri@stack.nl> | 2014-05-06 19:38:44 (GMT) |
---|---|---|
committer | Dimitri van Heesch <dimitri@stack.nl> | 2014-05-06 19:38:44 (GMT) |
commit | 8e8c9a1eff3411f3c37c449b4faba71875454e2c (patch) | |
tree | 504f712f78ecb353aebb7756e2805643abb09ad5 /src/fortrancode.l | |
parent | b6fa0a73e974f40e209acdf51c10473c0fa3249d (diff) | |
parent | db289e2272bfc3b00452cbf7c2a30114fb8b7c58 (diff) | |
download | Doxygen-8e8c9a1eff3411f3c37c449b4faba71875454e2c.zip Doxygen-8e8c9a1eff3411f3c37c449b4faba71875454e2c.tar.gz Doxygen-8e8c9a1eff3411f3c37c449b4faba71875454e2c.tar.bz2 |
Merge branch 'select_type' of https://github.com/hansec/doxygen into hansec-select_type
Conflicts:
src/fortrancode.l
Diffstat (limited to 'src/fortrancode.l')
-rw-r--r-- | src/fortrancode.l | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/fortrancode.l b/src/fortrancode.l index 70e588b..aaa8510 100644 --- a/src/fortrancode.l +++ b/src/fortrancode.l @@ -696,9 +696,9 @@ ATTR_SPEC (IMPLICIT|ALLOCATABLE|DIMENSION{ARGS}|EXTERNAL|{INTENT_SPEC}|INTRINSIC ACCESS_SPEC (PROTECTED|PRIVATE|PUBLIC) /* Assume that attribute statements are almost the same as attributes. */ ATTR_STMT {ATTR_SPEC}|DIMENSION -FLOW (DO|SELECT|CASE|SELECTCASE|WHERE|IF|THEN|ELSE|WHILE|FORALL|ELSEWHERE|ELSEIF|RETURN|CONTINUE|EXIT) +FLOW (DO|SELECT|CASE|SELECT{BS}(CASE|TYPE)|WHERE|IF|THEN|ELSE|WHILE|FORALL|ELSEWHERE|ELSEIF|RETURN|CONTINUE|EXIT) COMMANDS (FORMAT|CONTAINS|MODULE{BS_}PROCEDURE|WRITE|READ|ALLOCATE|ALLOCATED|ASSOCIATED|PRESENT|DEALLOCATE|NULLIFY|SIZE|INQUIRE|OPEN|CLOSE|FLUSH|DATA|COMMON) -IGNORE (CALL) +IGNORE (CALL) PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|IMPURE|PURE|ELEMENTAL)? /* | */ @@ -735,13 +735,13 @@ PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|I } /*-------- inner construct ---------------------------------------------------*/ -<Start>{COMMANDS}/[,( \t\n].* { // highlight +<Start>{COMMANDS}/[,( \t\n] { // highlight /* font class is defined e.g. in doxygen.css */ startFontClass("keyword"); codifyLines(yytext); endFontClass(); } -<Start>{FLOW}/[,( \t\n].* { +<Start>{FLOW}/[,( \t\n] { if (g_isFixedForm) { if ((yy_my_start == 1) && ((yytext[0] == 'c') || (yytext[0] == 'C'))) YY_FTN_REJECT; @@ -751,6 +751,11 @@ PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|I codifyLines(yytext); endFontClass(); } +<Start>^{BS}(CASE|CLASS|TYPE){BS_}(IS|DEFAULT) { + startFontClass("keywordflow"); + codifyLines(yytext); + endFontClass(); + } <Start>"end"({BS}{FLOW})?/[ \t\n] { // list is a bit long as not all have possible end startFontClass("keywordflow"); codifyLines(yytext); @@ -763,9 +768,9 @@ PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|I endFontClass(); } <Start>^{BS}"namelist"/[//] { // Namelist specification - startFontClass("keywordtype"); - codifyLines(yytext); - endFontClass(); + startFontClass("keywordtype"); + codifyLines(yytext); + endFontClass(); } /*-------- use statement -------------------------------------------*/ <Start>"use"{BS_} { |