From 2f31f7477b2b81ae9bc323a016a36e7f970ed2a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexander=20Ebersp=C3=A4cher?= Date: Tue, 11 Jun 2013 15:09:05 +0200 Subject: [PATCH] Fix tag generation for Fortran with 'forall' blocks * Add 'forall' as a keyword * Add a check that allows 'forall' as a secondary keyword in 'end' statements. --- tagmanager/ctags/fortran.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tagmanager/ctags/fortran.c b/tagmanager/ctags/fortran.c index 965be6c6..999f4043 100644 --- a/tagmanager/ctags/fortran.c +++ b/tagmanager/ctags/fortran.c @@ -84,6 +84,7 @@ typedef enum eKeywordId { KEYWORD_equivalence, KEYWORD_extends, KEYWORD_external, + KEYWORD_forall, KEYWORD_format, KEYWORD_function, KEYWORD_if, @@ -249,6 +250,7 @@ static const keywordDesc FortranKeywordTable [] = { { "equivalence", KEYWORD_equivalence }, { "extends", KEYWORD_extends }, { "external", KEYWORD_external }, + { "forall", KEYWORD_forall }, { "format", KEYWORD_format }, { "function", KEYWORD_function }, { "if", KEYWORD_if }, @@ -2045,7 +2047,8 @@ static boolean parseExecutionPart (tokenInfo *const token) if (isSecondaryKeyword (token, KEYWORD_do) || isSecondaryKeyword (token, KEYWORD_if) || isSecondaryKeyword (token, KEYWORD_select) || - isSecondaryKeyword (token, KEYWORD_where)) + isSecondaryKeyword (token, KEYWORD_where) || + isSecondaryKeyword (token, KEYWORD_forall)) { skipToNextStatement (token); result = TRUE;