diff options
author | Paul Thomas <pault@gcc.gnu.org> | 2008-05-14 21:32:53 +0000 |
---|---|---|
committer | Paul Thomas <pault@gcc.gnu.org> | 2008-05-14 21:32:53 +0000 |
commit | 16f2a7a4a53554e454d5373e6ef689da8fc84ef4 (patch) | |
tree | e8a141cbda81cabe41a14743340390177c00174d /gcc/fortran | |
parent | 4c7382bba925267cd4c71d29c0255c2964b4cb67 (diff) | |
download | gcc-16f2a7a4a53554e454d5373e6ef689da8fc84ef4.zip gcc-16f2a7a4a53554e454d5373e6ef689da8fc84ef4.tar.gz gcc-16f2a7a4a53554e454d5373e6ef689da8fc84ef4.tar.bz2 |
re PR fortran/36233 (Array valued actual procedure argument rejected)
2008-05-14 Paul Thomas <pault@gcc.gnu.org>
PR fortran/36233
* interface.c (compare_actual_formal): Do not check sizes if the
actual is BT_PROCEDURE.
2008-05-14 Paul Thomas <pault@gcc.gnu.org>
PR fortran/36233
* gfortran.dg/actual_procedure_1.f90: New test
From-SVN: r135307
Diffstat (limited to 'gcc/fortran')
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/interface.c | 4 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index d2470a1..2facb39 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2008-05-14 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/36233 + * interface.c (compare_actual_formal): Do not check sizes if the + actual is BT_PROCEDURE. + 2008-05-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> PR fortran/35682 diff --git a/gcc/fortran/interface.c b/gcc/fortran/interface.c index f5746bf..f70cedb 100644 --- a/gcc/fortran/interface.c +++ b/gcc/fortran/interface.c @@ -1942,7 +1942,9 @@ compare_actual_formal (gfc_actual_arglist **ap, gfc_formal_arglist *formal, actual_size = get_expr_storage_size (a->expr); formal_size = get_sym_storage_size (f->sym); - if (actual_size != 0 && actual_size < formal_size) + if (actual_size != 0 + && actual_size < formal_size + && a->expr->ts.type != BT_PROCEDURE) { if (a->expr->ts.type == BT_CHARACTER && !f->sym->as && where) gfc_warning ("Character length of actual argument shorter " |