http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46100
--- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> 2010-10-20 17:21:30 UTC --- Forgot to add: In the current ISO Fortran standard (Fortran 2008), one finds: "If a nonpointer dummy argument without the VALUE attribute corresponds to a pointer actual argument that is pointer associated with a target, the dummy argument becomes argument associated with that target." "The INTENT (INOUT) attribute for a nonpointer dummy argument specifies that any actual argument that corresponds to the dummy argument shall be definable." "definable -- capable of definition and permitted to become defined" Thus, it boils down to the questions whether the target (to which the pointer is pointer associated) is definable. I think that is usually the case, which makes the example valid. * * * Note, however, that Richard Maine disagrees - he thinks that it is invalid Fortran 2003, while it might be valid Fortran 2008. I cannot see an essential difference between the F2003 and F2008 wording, but there might be. (See thread and see interpretation request F95/0074 in http://j3-fortran.org/doc/standing/links/022.txt . Using a pointer function as LHS of an assignment is tracked by F2008's PR 40054.)