summaryrefslogtreecommitdiff
path: root/gcc/fortran
diff options
context:
space:
mode:
authortkoenig <tkoenig@138bc75d-0d04-0410-961f-82ee72b054a4>2005-05-18 20:24:32 +0000
committertkoenig <tkoenig@138bc75d-0d04-0410-961f-82ee72b054a4>2005-05-18 20:24:32 +0000
commit1b1197a3a32c4ab335b02c03543e21dd0f9558c6 (patch)
treea66bc7623de0b253a4f3ae529a58a4948e04f604 /gcc/fortran
parentd468906b53914096be0a460c362ddfa820631963 (diff)
downloadgcc-1b1197a3a32c4ab335b02c03543e21dd0f9558c6.tar.gz
2005-05-18 Thomas Koenig <Thomas.Koenig@online.de>
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 <Thomas.Koenig@online.de> 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 <Thomas.Koenig@online.de> PR libfortran/21127 * gfortran.dg/reshape-complex.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99925 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/fortran')
-rw-r--r--gcc/fortran/ChangeLog7
-rw-r--r--gcc/fortran/iresolve.c10
2 files changed, 15 insertions, 2 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 31179f06a02..87e10472d98 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,10 @@
+2005-05-18 Thomas Koenig <Thomas.Koenig@online.de>
+
+ 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 <erik.edelmann@iki.fi>
* array.c (gfc_match_array_constructor): Support [ ... ]
diff --git a/gcc/fortran/iresolve.c b/gcc/fortran/iresolve.c
index 746b97df444..e9392871fef 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: