It seems that as far as the symbol browser is concerned, END FORALL counts as END MODULE.
If you have a module CONTAINing several functions or subroutines, as soon as one of them uses END FORALL, all the later functions/subroutines show up as "outside" that module in the symbol browser (see attachment "outside.png").
If you comment out the END FORALL statement, clearly this makes the program wrong (in the cases where the FORALL block contains multiple statements, at least), but the symbol browser then correctly parses the document (see attachment "inside.png").
As I said, END FORALL isn't necessary (as far as the Fortran language is concerned) when you're only performing one operation using it (e.g. attachment "single_line.png"), but it is when you're using the FORALL as a block containing several statements.
Log in to post a comment.