On 2018-01-18 14:16:41 +0100, Vincent Lefevre wrote:
> [Cc to gmp-bugs]
>
> On 2018-01-18 23:14:12 +1100, [email protected] wrote:
> > Just had a reply on the mingw64 mailing list.
> > Apparently, the test programs are not crashing - abort() is being called
> > following an assertion failure.
> > And this calls for a "break abort" prior to "run" being called.
> >
> > See attached backtrace for tfprintf.exe. (I could supply equivalent for the
> > other 2 failing test programs - but I think they're essentially the same.)
>
> printf/repl-vsnprintf.c seems buggy for floating-point specifiers
> (EeGgFf). Replace "break" by "goto next" (2 occurrences)?
Proposed patch attached. Not tested.
--
Vincent Lefèvre <[email protected]> - Web: <https://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)
diff -r bd031c4d736b printf/repl-vsnprintf.c
--- a/printf/repl-vsnprintf.c Wed Jan 17 05:34:55 2018 +0100
+++ b/printf/repl-vsnprintf.c Thu Jan 18 15:05:49 2018 +0100
@@ -243,7 +243,7 @@
}
else
(void) va_arg (ap, double);
- break;
+ goto next;
case 'f':
/* Requested decimals, sign and point, and a margin for error,
@@ -264,7 +264,7 @@
(void) va_arg (ap, double);
total_width += double_digits;
}
- break;
+ goto next;
case 'h': /* short or char */
case 'j': /* intmax_t */
_______________________________________________
gmp-bugs mailing list
[email protected]
https://gmplib.org/mailman/listinfo/gmp-bugs