This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Dear Daniel,
Where a *non-RECURSIVE* procedure is used as "procedure expression" and could thus lead easily to being called recursively. In the PR is referenced a clf-thread, where it seems to be not agreed upon whether this code is really "illegal", but it is surely highly suspect.
I can think of no reason to distinguish it from a non-pointer recursive procedure call. The reasons for prohibiting in should be the same. I think that it should be an error and not a warning.
I attached the current patch reflecting the basic idea and open for adaptions according to your opinions on the point above; in this version it regression-tests fine on GNU/Linux-x86-32.
Apart from above, this is OK
PS: It seems that resolve_actual_arglist never calls gfc_resolve_expr on procedure expressions in the arglist. Is this a "bug" (without impacts) or intended? On the other hand, gfc_resolve_expr *is* called for RHS's of procedure pointer assignments, for instance. I'd have guessed that gfc_resolve_expr "should" also be called for the actual arguments.
Yes, that is a "bug".
Yours, Daniel
-- Done: Arc-Bar-Cav-Rog-Sam-Val-Wiz To go: Hea-Kni-Mon-Pri-Ran-Tou
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |