summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2014-05-06 19:30:16 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2014-05-06 19:30:16 (GMT)
commita7cf5ab5f3a8205615fa23de18fe7ba473e58adf (patch)
tree900ed124397ae08a19b5a5f80c2ca8954256c2f8
parentd5d946a6cdb8155c2119413be1516a837887bbb0 (diff)
parentdbd1985de07ccd19caf57ffa36c88811048689a4 (diff)
downloadDoxygen-a7cf5ab5f3a8205615fa23de18fe7ba473e58adf.zip
Doxygen-a7cf5ab5f3a8205615fa23de18fe7ba473e58adf.tar.gz
Doxygen-a7cf5ab5f3a8205615fa23de18fe7ba473e58adf.tar.bz2
Merge pull request #167 from hansec/class_vardef
Add class/procedure vardefs to FORTRAN code highlighting
-rw-r--r--src/fortrancode.l5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/fortrancode.l b/src/fortrancode.l
index b2991f5..656a96e 100644
--- a/src/fortrancode.l
+++ b/src/fortrancode.l
@@ -688,7 +688,8 @@ NUM_TYPE (complex|integer|logical|real)
LOG_OPER (\.and\.|\.eq\.|\.eqv\.|\.ge\.|\.gt\.|\.le\.|\.lt\.|\.ne\.|\.neqv\.|\.or\.|\.not\.)
KIND {ARGS}
CHAR (CHARACTER{ARGS}?|CHARACTER{BS}"*"({BS}[0-9]+|{ARGS}))
-TYPE_SPEC (({NUM_TYPE}({BS}"*"{BS}[0-9]+)?)|({NUM_TYPE}{KIND})|DOUBLE{BS}COMPLEX|DOUBLE{BS}PRECISION|{CHAR})
+TYPE_SPEC (({NUM_TYPE}({BS}"*"{BS}[0-9]+)?)|({NUM_TYPE}{KIND})|DOUBLE{BS}COMPLEX|DOUBLE{BS}PRECISION|{CHAR}|PROCEDURE)
+TYPE_PREFIX ((TYPE|CLASS|PROCEDURE){BS}"(")
INTENT_SPEC intent{BS}"("{BS}(in|out|in{BS}out){BS}")"
ATTR_SPEC (IMPLICIT|ALLOCATABLE|DIMENSION{ARGS}|EXTERNAL|{INTENT_SPEC}|INTRINSIC|OPTIONAL|PARAMETER|POINTER|PROTECTED|PRIVATE|PUBLIC|SAVE|TARGET|RECURSIVE|PURE|IMPURE|ELEMENTAL)
@@ -889,7 +890,7 @@ PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|I
endFontClass();
}
/*-------- variable declaration ----------------------------------*/
-<Start>"type"{BS}"(" {
+<Start>^{BS}{TYPE_PREFIX}/{ID} {
yy_push_state(YY_START);
BEGIN(TypeDecl);
startFontClass("keywordtype");