From 8cb19ee36aadf82ea8ae414a81986eacfca00ce6 Mon Sep 17 00:00:00 2001 From: Jerry DeLisle Date: Sat, 26 May 2018 18:22:18 +0000 Subject: [PATCH] re PR target/89506 (ICE: in decompose, at rtl.h:2266 with -Og -g) 2018-05-26 Jerry DeLisle PR libgfortran/89506 * io/write.c (write_integer): Initialise the fnode format to FMT_NONE, used for list directed write. (BUF_STACK_SZ): Bump default buffer size up to avoid allocs on small stuff. From-SVN: r260795 --- libgfortran/ChangeLog | 8 ++++++++ libgfortran/io/write.c | 3 ++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index ddf488cdf1d..40304ce32e7 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,11 @@ +2018-05-26 Jerry DeLisle + + PR libgfortran/89506 + * io/write.c (write_integer): Initialise the fnode format to + FMT_NONE, used for list directed write. + (BUF_STACK_SZ): Bump default buffer size up to avoid allocs on + small stuff. + 2018-05-26 Jerry DeLisle PR libgfortran/85840 diff --git a/libgfortran/io/write.c b/libgfortran/io/write.c index 21a265c8f6b..5d52fd6914f 100644 --- a/libgfortran/io/write.c +++ b/libgfortran/io/write.c @@ -1348,6 +1348,7 @@ write_integer (st_parameter_dt *dtp, const char *source, int kind) } f.u.integer.w = width; f.u.integer.m = -1; + f.format = FMT_NONE; write_decimal (dtp, &f, source, kind, (void *) gfc_itoa); } @@ -1465,7 +1466,7 @@ write_character (st_parameter_dt *dtp, const char *source, int kind, size_t leng /* Floating point helper functions. */ -#define BUF_STACK_SZ 256 +#define BUF_STACK_SZ 384 static int get_precision (st_parameter_dt *dtp, const fnode *f, const char *source, int kind) -- 2.30.2