re PR libfortran/33225 (Missing last digit in some formatted output (on 32bit targets...
authorJerry DeLisle <jvdelisle@gcc.gnu.org>
Wed, 5 Sep 2007 00:51:18 +0000 (00:51 +0000)
committerJerry DeLisle <jvdelisle@gcc.gnu.org>
Wed, 5 Sep 2007 00:51:18 +0000 (00:51 +0000)
commit7b71bedf4085609d76cd639dab12bba4786879e0
tree650e336ade4ed49f8c1a07931cc42cfd300961ad
parentf143c8e7d8d5aef7171ac329bf7504474a3b1185
re PR libfortran/33225 (Missing last digit in some formatted output (on 32bit targets), per kind write_float)

2007-03-04  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/33225
* io/write.c (stdbool.h): Add include. (sign_t): Move typedef to
new file write_float.def. Include write_float.def.
(extract_real): Delete. (calculate_sign): Delete.
(calculate_exp): Delete. (calculate_G_format): Delete.
(output_float): Delete. (write_float): Delete.
* io/write_float.def (calculate_sign): Added.
(output_float): Refactored to be independent of kind and added to this
file for inclusion. (write_infnan): New function to write "Infinite" or
"NaN" depending on flags passed, independent of kind.
(CALCULATE_EXP): New macro to build kind specific functions. Use it.
(OUTPUT_FLOAT_FMT_G): New macro, likewise. Use it.
(DTOA, DTOAL): Macros to implement "decimal to ascii".
(WRITE_FLOAT): New macro for kind specific write_float functions.
(write_float): Revised function to determine kind and use WRITE_FLOAT
to implement kind specific output.

From-SVN: r128114
libgfortran/ChangeLog
libgfortran/io/write.c
libgfortran/io/write_float.def [new file with mode: 0644]