On 9/20/05, Stefano Zacchiroli <[EMAIL PROTECTED]> wrote: > > I don't know the syntax of fortran 90, to fix the bug I need some more > info on it. Is it enough to ignore during matching every occurrence of > the "module" keyword which are inside "INTERFACE" ... "END INTERFACE" > pairs? Can those pairs be nested or not? >
Ref :- Fortran 95 Handbook, by Jeanne C. Adams, Walter S. Brainerd, Jeanne T. Martin, Brian T. Smith, Jerrold L. Wagener, 1997 On Pg-499 of this book, the syntax for INTERFACE blocks is given by INTERFACE [ generic-spec ] [ interface-body ] ... [ MODULE PROCEDURE procedure-name-list ] ... END INTERFACE where [] means those elements are optional. I do not think INTERFACE blocks could be nested. But I could be wrong. > Alternatively, is the keyword sequence "module procedure" which has > nothing to do with the "module" keyword alone and thus should not be > considered a match for "end module" no matter wher it appears? > Yes. I think this would be the correct solution. The word module in "module procedure" has nothing to do with the module in "module --- end module block". Just in case, I would also like to point out that Fortran is case insensitive. regards raju