diff options
author | Jakub Jelinek <jakub@redhat.com> | 2022-01-04 15:55:27 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2022-01-11 23:49:49 +0100 |
commit | 06a74228ce589dc24b37341d22a6933cdccdb6bd (patch) | |
tree | d56ba6b35c10aa79eb497fbdca06eddb51498617 | |
parent | 6d708172367dd62b08c370e94fc438141783b8ef (diff) | |
download | gcc-06a74228ce589dc24b37341d22a6933cdccdb6bd.zip gcc-06a74228ce589dc24b37341d22a6933cdccdb6bd.tar.gz gcc-06a74228ce589dc24b37341d22a6933cdccdb6bd.tar.bz2 |
fortran, libgfortran: Assorted -mabi=ieeelongdouble I/O fixes
Another patch, this fixes:
FAIL: gfortran.dg/intrinsic_spread_2.f90 -O0 execution test
FAIL: gfortran.dg/intrinsic_spread_2.f90 -O1 execution test
FAIL: gfortran.dg/intrinsic_spread_2.f90 -O2 execution test
FAIL: gfortran.dg/intrinsic_spread_2.f90 -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions execution test
FAIL: gfortran.dg/intrinsic_spread_2.f90 -O3 -g execution test
FAIL: gfortran.dg/intrinsic_spread_2.f90 -Os execution test
FAIL: gfortran.dg/intrinsic_unpack_2.f90 -O0 execution test
FAIL: gfortran.dg/intrinsic_unpack_2.f90 -O1 execution test
FAIL: gfortran.dg/intrinsic_unpack_2.f90 -O2 execution test
FAIL: gfortran.dg/intrinsic_unpack_2.f90 -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions execution test
FAIL: gfortran.dg/intrinsic_unpack_2.f90 -O3 -g execution test
FAIL: gfortran.dg/intrinsic_unpack_2.f90 -Os execution test
FAIL: gfortran.dg/large_real_kind_form_io_1.f90 -O0 execution test
FAIL: gfortran.dg/large_real_kind_form_io_1.f90 -O1 execution test
FAIL: gfortran.dg/large_real_kind_form_io_1.f90 -O2 execution test
FAIL: gfortran.dg/large_real_kind_form_io_1.f90 -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions execution test
FAIL: gfortran.dg/large_real_kind_form_io_1.f90 -O3 -g execution test
FAIL: gfortran.dg/large_real_kind_form_io_1.f90 -Os execution test
FAIL: gfortran.dg/quad_2.f90 -O0 execution test
FAIL: gfortran.dg/quad_2.f90 -O1 execution test
FAIL: gfortran.dg/quad_2.f90 -O2 execution test
FAIL: gfortran.dg/quad_2.f90 -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions execution test
FAIL: gfortran.dg/quad_2.f90 -O3 -g execution test
FAIL: gfortran.dg/quad_2.f90 -Os execution test
2022-01-04 Jakub Jelinek <jakub@redhat.com>
gcc/fortran/
* trans-io.c (transfer_array_desc): Pass abi kind instead of kind
to libgfortran.
libgfortran/
* io/read.c (convert_real): Add missing break; for the
HAVE_GFC_REAL_17 case.
-rw-r--r-- | gcc/fortran/trans-io.c | 2 | ||||
-rw-r--r-- | libgfortran/io/read.c | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/gcc/fortran/trans-io.c b/gcc/fortran/trans-io.c index 2730b47..033b102 100644 --- a/gcc/fortran/trans-io.c +++ b/gcc/fortran/trans-io.c @@ -2528,7 +2528,7 @@ transfer_array_desc (gfc_se * se, gfc_typespec * ts, tree addr_expr) else charlen_arg = build_int_cst (gfc_charlen_type_node, 0); - kind_arg = build_int_cst (integer_type_node, ts->kind); + kind_arg = build_int_cst (integer_type_node, gfc_type_abi_kind (ts)); tmp = gfc_build_addr_expr (NULL_TREE, dt_parm); if (last_dt == READ) diff --git a/libgfortran/io/read.c b/libgfortran/io/read.c index 49d7983a..21e7851 100644 --- a/libgfortran/io/read.c +++ b/libgfortran/io/read.c @@ -202,6 +202,7 @@ convert_real (st_parameter_dt *dtp, void *dest, const char *buffer, int length) # else *((GFC_REAL_17*) dest) = __qmath_(strtoflt128) (buffer, &endptr); # endif + break; #endif default: |