diff options
author | François-Xavier Coudert <fxcoudert@gcc.gnu.org> | 2005-04-27 15:37:53 +0000 |
---|---|---|
committer | François-Xavier Coudert <fxcoudert@gcc.gnu.org> | 2005-04-27 15:37:53 +0000 |
commit | 90aeadcb5c1c498a6b4260a3e35063618541aff0 (patch) | |
tree | 994299707c399c2909c8c7b1436fe3b387996d36 /gcc/fortran | |
parent | b9f8dfba4222e65611c4e9ff15ee392a40e5117a (diff) | |
download | gcc-90aeadcb5c1c498a6b4260a3e35063618541aff0.zip gcc-90aeadcb5c1c498a6b4260a3e35063618541aff0.tar.gz gcc-90aeadcb5c1c498a6b4260a3e35063618541aff0.tar.bz2 |
re PR fortran/21177 (wrong code with NULL())
PR fortran/21177
* interface.c (compare_parameter): Ignore type for EXPR_NULL
only if type is BT_UNKNOWN.
* gfortran.dg/pr21177.f90: New test
From-SVN: r98837
Diffstat (limited to 'gcc/fortran')
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/interface.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index bf87e6a..822dcd0 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2005-04-27 Francois-Xavier Coudert <coudert@clipper.ens.fr> + + PR fortran/21177 + * interface.c (compare_parameter): Ignore type for EXPR_NULL + only if type is BT_UNKNOWN. + 2005-04-25 Paul Brook <paul@codesourcery.com> Steven G. Kargl <kargls@comcast.net> diff --git a/gcc/fortran/interface.c b/gcc/fortran/interface.c index 6cb8fc6..5b848bc 100644 --- a/gcc/fortran/interface.c +++ b/gcc/fortran/interface.c @@ -1096,7 +1096,7 @@ compare_parameter (gfc_symbol * formal, gfc_expr * actual, return compare_interfaces (formal, actual->symtree->n.sym, 0); } - if (actual->expr_type != EXPR_NULL + if ((actual->expr_type != EXPR_NULL || actual->ts.type != BT_UNKNOWN) && !gfc_compare_types (&formal->ts, &actual->ts)) return 0; |