[PATCH] Fortran: [PR93727] Add EX format READ (read_ex)

Jerry D jvdelisle2@gmail.com
Sat Jun 6 21:15:41 GMT 2026


polite ping.
On 6/3/26 1:42 PM, Jerry D wrote:
> The following implements the last of the EX formatting work. The attached patch 
> has been regression tested on x86_64. The test case provided round trip testing 
> to ensure what we read is what we wrote.
> 
> OK for mainline?
> 
> Best regards,
> 
> Jerry
> ---
> Fortran: [PR93727] Add EX format READ (read_ex)
> 
> Implement read_ex in libgfortran to handle EX edit-descriptor input
> per Fortran 2023 13.7.2.3.6.  The input field may contain:
> 
>    * a hexadecimal-significand form (0X<sig>P<exp>) passed directly
>      to the C strtod/strtold family for exact bit-for-bit conversion;
>    * any form acceptable for Fw.d input (decimal fallback), including
>      INF and NAN representations.
> 
> For decimal input without a decimal point the d field of the EX.w.d
> descriptor adjusts the exponent exactly as for Fw.d.  BN/BZ blank
> handling and the kP scale factor are also supported via the shared
> decimal path.
> 
> Assisted by: Claude Sonnet 4.6
> 
>      PR fortran/93727
> 
> libgfortran/ChangeLog:
> 
>      * io/read.c (read_ex): New function implementing EX format read.
>      * io/io.h (read_ex): Declare.
>      * io/transfer.c (formatted_transfer_scalar_read): Add FMT_EX case
>      dispatching to read_ex.
> 
> gcc/testsuite/ChangeLog:
> 
>      * gfortran.dg/EXformat_4.F90: New test covering EX format read
>      for kind=4 and 8 (always) and kind=10, 16 (when available):
>      hex-significand literals, lowercase prefix, negative binary
>      exponent, decimal fallback, d-field adjustment, INF/NAN, zero
>      field, and round-trips through write_ex.
> ---



More information about the Fortran mailing list