From 8f4dc7afb1a6f80c8e16d442ed025c003cf25f3d Mon Sep 17 00:00:00 2001 From: Thomas Koenig Date: Wed, 18 May 2005 20:24:32 +0000 Subject: re PR libfortran/21127 (reshape of complex broken) 2005-05-18 Thomas Koenig PR libfortran/21127 * Makefile.am: Add generated/reshape_c4.c and generated/reshape_c8.c. * Makefile.in: Regenerated. * m4/iparm.m4: Define rtype_ccode to be c4 or c8 for complex types, 4 or 8 otherwise. * m4/reshape.m4: Use rtype_ccode instead of rtype_kind in function name. * generated/reshape_c4.c: New file. * generated/reshape_c8.c: New file. 2005-05-18 Thomas Koenig PR libfortran/21127 * fortran/iresolve.c (gfc_resolve_reshape): Add gfc_type_letter (BT_COMPLEX) for complex to to resolved function name. 2005-05-18 Thomas Koenig PR libfortran/21127 * gfortran.dg/reshape-complex.f90: New test. From-SVN: r99925 --- gcc/fortran/ChangeLog | 7 +++++++ gcc/fortran/iresolve.c | 10 ++++++++-- 2 files changed, 15 insertions(+), 2 deletions(-) (limited to 'gcc/fortran') diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 31179f0..87e1047 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,10 @@ +2005-05-18 Thomas Koenig + + PR libfortran/21127 + * fortran/iresolve.c (gfc_resolve_reshape): Add + gfc_type_letter (BT_COMPLEX) for complex to + to resolved function name. + 2005-05-18 Erik Edelmann * array.c (gfc_match_array_constructor): Support [ ... ] diff --git a/gcc/fortran/iresolve.c b/gcc/fortran/iresolve.c index 746b97d..e939287 100644 --- a/gcc/fortran/iresolve.c +++ b/gcc/fortran/iresolve.c @@ -1137,8 +1137,14 @@ gfc_resolve_reshape (gfc_expr * f, gfc_expr * source, gfc_expr * shape, case 4: case 8: /* case 16: */ - f->value.function.name = - gfc_get_string (PREFIX("reshape_%d"), source->ts.kind); + if (source->ts.type == BT_COMPLEX) + f->value.function.name = + gfc_get_string (PREFIX("reshape_%c%d"), + gfc_type_letter (BT_COMPLEX), source->ts.kind); + else + f->value.function.name = + gfc_get_string (PREFIX("reshape_%d"), source->ts.kind); + break; default: -- cgit v1.1