aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorSteven G. Kargl <kargl@gcc.gnu.org>2017-10-30 19:33:12 +0000
committerSteven G. Kargl <kargl@gcc.gnu.org>2017-10-30 19:33:12 +0000
commit0c51bf96b4b62689d53ce4cb12006eef9696af9b (patch)
treeb0a60f078cf50ddd0e647165877f457136f78efe /gcc
parentbae0ffb560161297affa64d94aede0b8c5553a5f (diff)
downloadgcc-0c51bf96b4b62689d53ce4cb12006eef9696af9b.zip
gcc-0c51bf96b4b62689d53ce4cb12006eef9696af9b.tar.gz
gcc-0c51bf96b4b62689d53ce4cb12006eef9696af9b.tar.bz2
resolve.c (resolve_transfer): Set derived to correct symbol for BT_CLASS.
2017-10-30 Steven G. Kargl <kargl@gcc.gnu.org> * resolve.c (resolve_transfer): Set derived to correct symbol for BT_CLASS. 2017-10-30 Steven G. Kargl <kargl@gcc.gnu.org> * gfortran.dg/dtio_13.f90: Remove TODO comment and dg-error test. From-SVN: r254241
Diffstat (limited to 'gcc')
-rw-r--r--gcc/fortran/ChangeLog5
-rw-r--r--gcc/fortran/resolve.c2
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_13.f904
4 files changed, 11 insertions, 4 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 67ebf7b..0d4a873 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,8 @@
+2017-10-30 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * resolve.c (resolve_transfer): Set derived to correct symbol for
+ BT_CLASS.
+
2017-10-29 Jim Wilson <wilson@tuliptree.org>
* invoke.texi: Delete adb and sdb references.
diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c
index 5062bcb..104c02f 100644
--- a/gcc/fortran/resolve.c
+++ b/gcc/fortran/resolve.c
@@ -9181,7 +9181,7 @@ resolve_transfer (gfc_code *code)
if (dt && dt->dt_io_kind->value.iokind != M_INQUIRE
&& (ts->type == BT_DERIVED || ts->type == BT_CLASS))
{
- if (ts->type == BT_DERIVED)
+ if (ts->type == BT_DERIVED || ts->type == BT_CLASS)
derived = ts->u.derived;
else
derived = ts->u.derived->components->ts.u.derived;
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 40ef87e..0ffba85 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2017-10-30 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * gfortran.dg/dtio_13.f90: Remove TODO comment and dg-error test.
+
2017-10-30 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/82085
diff --git a/gcc/testsuite/gfortran.dg/dtio_13.f90 b/gcc/testsuite/gfortran.dg/dtio_13.f90
index 9b90720..131af05 100644
--- a/gcc/testsuite/gfortran.dg/dtio_13.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_13.f90
@@ -136,9 +136,7 @@ program test
character(3) :: a, b
class(t) :: chairman ! { dg-error "must be dummy, allocatable or pointer" }
open (unit=71, file='myunformatted_data.dat', form='unformatted')
-! The following error is spurious and is eliminated if previous error is corrected.
-! TODO Although better than an ICE, fix me.
- read (71) a, chairman, b ! { dg-error "cannot be polymorphic" }
+ read (71) a, chairman, b
close (unit=71)
end