aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2018-06-15 22:36:38 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2018-06-15 22:36:38 +0200
commitda8ea71e3733ba9c5f70a84cea9cafea6b0126b0 (patch)
treec9666afbacc9e91f2ba218c44d66904e891c37cb /gcc/testsuite
parentfe7a23a611df9954918f334f855935ce228c88d6 (diff)
downloadgcc-da8ea71e3733ba9c5f70a84cea9cafea6b0126b0.zip
gcc-da8ea71e3733ba9c5f70a84cea9cafea6b0126b0.tar.gz
gcc-da8ea71e3733ba9c5f70a84cea9cafea6b0126b0.tar.bz2
re PR middle-end/85878 (ICE in convert_mode_scalar, at expr.c:287)
PR middle-end/85878 * expr.c (expand_assignment): Remove now redundant COMPLEX_MODE_P check from first store_expr, use to_mode instead of GET_MODE (to_rtx). Only call store_expr for halves if the mode is the same. * gfortran.fortran-torture/compile/pr85878.f90: New test. From-SVN: r261659
Diffstat (limited to 'gcc/testsuite')
-rw-r--r--gcc/testsuite/ChangeLog3
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/compile/pr85878.f908
2 files changed, 11 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 045c4cd..89b0567 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,5 +1,8 @@
2018-06-15 Jakub Jelinek <jakub@redhat.com>
+ PR middle-end/85878
+ * gfortran.fortran-torture/compile/pr85878.f90: New test.
+
PR middle-end/86123
* gcc.c-torture/compile/pr86123.c: New test.
diff --git a/gcc/testsuite/gfortran.fortran-torture/compile/pr85878.f90 b/gcc/testsuite/gfortran.fortran-torture/compile/pr85878.f90
new file mode 100644
index 0000000..e52e95f
--- /dev/null
+++ b/gcc/testsuite/gfortran.fortran-torture/compile/pr85878.f90
@@ -0,0 +1,8 @@
+! PR middle-end/85878
+
+program pr85878
+ real :: a
+ complex :: c = (2.0, 3.0)
+ print *, c
+ print *, transfer (a, c)
+end