summaryrefslogtreecommitdiffstats
path: root/src/fortrancode.l
diff options
context:
space:
mode:
authordimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2010-11-06 19:00:58 (GMT)
committerdimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2010-11-06 19:00:58 (GMT)
commit01f41c40b8505c8f197ef1e5bf7e3a3bc777dc0e (patch)
tree0a8fa55f942d3a0e2f845bc77e6a357b9fb1c1c7 /src/fortrancode.l
parenta32c2461bfbe6705159abfcae92fb11f1309b37c (diff)
downloadDoxygen-01f41c40b8505c8f197ef1e5bf7e3a3bc777dc0e.zip
Doxygen-01f41c40b8505c8f197ef1e5bf7e3a3bc777dc0e.tar.gz
Doxygen-01f41c40b8505c8f197ef1e5bf7e3a3bc777dc0e.tar.bz2
Release-1.7.2-20101106
Diffstat (limited to 'src/fortrancode.l')
-rw-r--r--src/fortrancode.l8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/fortrancode.l b/src/fortrancode.l
index d8f592c..2923ad6 100644
--- a/src/fortrancode.l
+++ b/src/fortrancode.l
@@ -645,12 +645,16 @@ B [ \t]
BS [ \t]*
BS_ [ \t]+
COMMA {BS},{BS}
-ARGS {BS}("("[^)]*")"){BS}
+ARGS_L0 ("("[^)]*")")
+ARGS_L1a [^()]*"("[^)]*")"[^)]*
+ARGS_L1 ("("{ARGS_L1a}*")")
+ARGS_L2 "("({ARGS_L0}|[^()]|{ARGS_L1a}|{ARGS_L1})*")"
+ARGS {BS}({ARGS_L0}|{ARGS_L1}|{ARGS_L2})
NUM_TYPE (complex|integer|logical|real)
KIND {ARGS}
CHAR (CHARACTER{ARGS}?|CHARACTER{BS}"*"({BS}[0-9]+|{ARGS}))
-TYPE_SPEC (({NUM_TYPE}({BS}"*"{BS}[0-9]+)?)|({NUM_TYPE}{KIND})|DOUBLE{B}PRECISION|{CHAR})
+TYPE_SPEC (({NUM_TYPE}({BS}"*"{BS}[0-9]+)?)|({NUM_TYPE}{KIND})|DOUBLE{BS_}PRECISION|{CHAR}|TYPE{ARGS})
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|RECURSIVE|PURE|ELEMENTAL)