http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49509
--- Comment #3 from stevenj at alum dot mit.edu 2011-06-23 03:00:47 UTC --- > Hence, the familiar old requirements of the Fortran standard are irrelevant. > The question is, what does the Fortran 2003 standard require for passing by > value, which is I believe is NEW IN FORTRAN 2003, and is SPECIFIC TO BIND(C) > functions. Just checked, and the VALUE attribute it is indeed new in Fortran 2003, but it is not specific to bind(C). But the point remains that your usual understanding of Fortran semantics does not apply here.