Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. =================================================================== RCS file: /ftp/cvs/cvsroot/src/lib/libc/gdtoa/g_Qfmt.c,v rcsdiff: /ftp/cvs/cvsroot/src/lib/libc/gdtoa/g_Qfmt.c,v: warning: Unknown phrases like `commitid ...;' are present. retrieving revision 1.3 retrieving revision 1.4 diff -u -p -r1.3 -r1.4 --- src/lib/libc/gdtoa/g_Qfmt.c 2008/03/21 23:13:48 1.3 +++ src/lib/libc/gdtoa/g_Qfmt.c 2011/03/20 23:15:35 1.4 @@ -1,4 +1,4 @@ -/* $NetBSD: g_Qfmt.c,v 1.3 2008/03/21 23:13:48 christos Exp $ */ +/* $NetBSD: g_Qfmt.c,v 1.4 2011/03/20 23:15:35 christos Exp $ */ /**************************************************************** @@ -53,15 +53,20 @@ THIS SOFTWARE. char* #ifdef KR_headers -g_Qfmt(buf, V, ndig, bufsize) char *buf; char *V; int ndig; unsigned bufsize; +g_Qfmt(buf, V, ndig, bufsize) char *buf; char *V; int ndig; size_t bufsize; #else -g_Qfmt(char *buf, void *V, int ndig, unsigned bufsize) +g_Qfmt(char *buf, void *V, int ndig, size_t bufsize) #endif { - static FPI fpi = { 113, 1-16383-113+1, 32766 - 16383 - 113 + 1, 1, 0 }; + static FPI fpi0 = { 113, 1-16383-113+1, 32766 - 16383 - 113 + 1, 1, 0 }; char *b, *s, *se; ULong bits[4], *L, sign; int decpt, ex, i, mode; +#ifdef Honor_FLT_ROUNDS +#include "gdtoa_fltrnds.h" +#else +#define fpi &fpi0 +#endif if (ndig < 0) ndig = 0; @@ -111,8 +116,8 @@ g_Qfmt(char *buf, void *V, int ndig, uns return 0; mode = 0; } - s = gdtoa(&fpi, ex, bits, &i, mode, ndig, &decpt, &se); + s = gdtoa(fpi, ex, bits, &i, mode, ndig, &decpt, &se); if (s == NULL) return NULL; - return g__fmt(buf, s, se, decpt, sign); + return g__fmt(buf, s, se, decpt, sign, bufsize); }