diff options
author | Paul Thomas <pault@gcc.gnu.org> | 2006-07-13 05:07:35 +0000 |
---|---|---|
committer | Paul Thomas <pault@gcc.gnu.org> | 2006-07-13 05:07:35 +0000 |
commit | 72af9f0b517b8dec055f72bf2ba7bfcb2e8da99b (patch) | |
tree | 677273f32ea31a251f8e44292ca967e69e8d4e7b /gcc/fortran/trans-expr.c | |
parent | 3fb8727b3b054dbb2c934baf33bb8946eeb3fae1 (diff) | |
download | gcc-72af9f0b517b8dec055f72bf2ba7bfcb2e8da99b.zip gcc-72af9f0b517b8dec055f72bf2ba7bfcb2e8da99b.tar.gz gcc-72af9f0b517b8dec055f72bf2ba7bfcb2e8da99b.tar.bz2 |
re PR fortran/28174 (Corruption of multiple character arrays when passing array sections)
2006-07-13 Paul Thomas <pault@gcc.gnu.org>
PR fortran/28174
* trans-expr.c (gfc_conv_aliased_arg): Missing formal arg means
that intent is INOUT (fixes regression).
PR fortran/25097
* check.c (check_present): The only permitted reference is a
full array reference.
PR fortran/20903
* decl.c (variable_decl): Add error if a derived type is not
from the current namespace if the namespace is an interface
body.
2006-07-13 Paul Thomas <pault@gcc.gnu.org>
PR fortran/25097
* gfortran.dg/present_1.f90: New test.
PR fortran/20903
* gfortran.dg/interface_derived_type_1.f90: New test.
From-SVN: r115410
Diffstat (limited to 'gcc/fortran/trans-expr.c')
-rw-r--r-- | gcc/fortran/trans-expr.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c index 5c396ef..de003ec 100644 --- a/gcc/fortran/trans-expr.c +++ b/gcc/fortran/trans-expr.c @@ -1981,7 +1981,8 @@ gfc_conv_function_call (gfc_se * se, gfc_symbol * sym, array of derived types. In this case, the argument is converted to a temporary, which is passed and then written back after the procedure call. */ - gfc_conv_aliased_arg (&parmse, e, f, fsym->attr.intent); + gfc_conv_aliased_arg (&parmse, e, f, + fsym ? fsym->attr.intent : INTENT_INOUT); else gfc_conv_array_parameter (&parmse, e, argss, f); |