<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/lib/libc/stdio/vfprintf.c, branch release/5.1.0_cvs</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F5.1.0_cvs</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F5.1.0_cvs'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2003-06-04T16:00:27Z</updated>
<entry>
<title>This commit was manufactured by cvs2svn to create tag</title>
<updated>2003-06-04T16:00:27Z</updated>
<author>
<name>cvs2svn</name>
<email>cvs2svn@FreeBSD.org</email>
</author>
<published>2003-06-04T16:00:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=1c0442969cd576514acfce932c0a0798593c7af7'/>
<id>urn:sha1:1c0442969cd576514acfce932c0a0798593c7af7</id>
<content type='text'>
'RELENG_5_1_0_RELEASE'.

This commit was manufactured to restore the state of the 5.1-RELEASE image.
Releases prior to 5.3-RELEASE are omitting the secure/ and crypto/ subdirs.
</content>
</entry>
<entry>
<title>%E-like %g and %G conversions should remove trailing zeroes unless</title>
<updated>2003-04-19T23:53:19Z</updated>
<author>
<name>David Schultz</name>
<email>das@FreeBSD.org</email>
</author>
<published>2003-04-19T23:53:19Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=1f2a0cdf581815ce88168a56079eba4a3e149770'/>
<id>urn:sha1:1f2a0cdf581815ce88168a56079eba4a3e149770</id>
<content type='text'>
the # flag is present.  Implement this behavior and add a comment
describing it.

Noticed by:	Enache Adrian &lt;enache@rdslink.ro&gt;
Pointy hat to:	das
</content>
</entry>
<entry>
<title>Fix a bug where printf was erroneously printing a decimal point for</title>
<updated>2003-04-14T11:24:53Z</updated>
<author>
<name>David Schultz</name>
<email>das@FreeBSD.org</email>
</author>
<published>2003-04-14T11:24:53Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=81ae2e9a4d89ba3af7cc008df88497518f3777fc'/>
<id>urn:sha1:81ae2e9a4d89ba3af7cc008df88497518f3777fc</id>
<content type='text'>
%f and sufficiently short %g specifiers where the precision was
explicitly zero, no '#' flag was specified, and the floating point
argument was &gt; 0 and &lt;= 0.5.  While at it, add some comments to better
explain the relevant bits of code.

Noticed by:	Christoph Kukulies &lt;kuku@physik.rwth-aachen.de&gt;
</content>
</entry>
<entry>
<title>__wcsconv(): free(convbuf) before returning NULL</title>
<updated>2003-04-07T03:17:39Z</updated>
<author>
<name>Andrey A. Chernov</name>
<email>ache@FreeBSD.org</email>
</author>
<published>2003-04-07T03:17:39Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=6f098a4811a9140076f797e55962e535e4a164d0'/>
<id>urn:sha1:6f098a4811a9140076f797e55962e535e4a164d0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Today just isn't my day.  Remove some old commented out code that snuck</title>
<updated>2003-04-07T01:07:48Z</updated>
<author>
<name>David Schultz</name>
<email>das@FreeBSD.org</email>
</author>
<published>2003-04-07T01:07:48Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=d890afb84d783f8817300d4b5a69981ba12608f4'/>
<id>urn:sha1:d890afb84d783f8817300d4b5a69981ba12608f4</id>
<content type='text'>
into the last commit.

Noticed by:	mike
</content>
</entry>
<entry>
<title>- %e conversions with precision 0 should not cause a decimal point to</title>
<updated>2003-04-07T00:42:19Z</updated>
<author>
<name>David Schultz</name>
<email>das@FreeBSD.org</email>
</author>
<published>2003-04-07T00:42:19Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=3b204b7d094a2e6319f660ea497a5884da0c892d'/>
<id>urn:sha1:3b204b7d094a2e6319f660ea497a5884da0c892d</id>
<content type='text'>
  be printed.
- Fix %f conversions where the number of significant digits is &lt; expt.
  This would be a one-line change were it not for thousands separators.
  Noticed by tjr.
- Remove some unnecessary code in the parsing of precision specifiers.
</content>
</entry>
<entry>
<title>Rework the floating point code in printf().  Significant changes:</title>
<updated>2003-04-05T22:11:42Z</updated>
<author>
<name>David Schultz</name>
<email>das@FreeBSD.org</email>
</author>
<published>2003-04-05T22:11:42Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=ebbad5ec5c92f22c219a3f2cae9f1f175709235f'/>
<id>urn:sha1:ebbad5ec5c92f22c219a3f2cae9f1f175709235f</id>
<content type='text'>
- We used to round long double arguments to double.  Now we print
  them properly.

- Bugs involving '%F', corner cases of '#' and 'g' format
  specifiers, and the '.*' precision specifier have been
  fixed.

- Added support for the "'" specifier to print thousands' grouping
  characters in a locale-dependent manner.

- Implement the __vfprintf() side of hexadecimal floating point
  support.  All that is still needed is a routine to convert the
  mantissa to hex digits one nibble at a time in the style of ultoa().

Reviewed by:	silence on standards@
</content>
</entry>
<entry>
<title>Correct some buffer sizes.</title>
<updated>2003-04-05T22:03:43Z</updated>
<author>
<name>David Schultz</name>
<email>das@FreeBSD.org</email>
</author>
<published>2003-04-05T22:03:43Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=38cac8f88bdbc98152546e697f84e9015d972ff3'/>
<id>urn:sha1:38cac8f88bdbc98152546e697f84e9015d972ff3</id>
<content type='text'>
- __vfprintf()'s 'buf' has never been used for floating point, so
  don't define it in terms of (incorrect) constants describing
  floating point numbers.  The actual size needed depends on
  sizeof(uintmax_t) and locale details, so I slightly overestimated.

- We don't need a 308-character buffer to store the string "308".
  With long doubles and %a we need more than three characters, though.
</content>
</entry>
<entry>
<title>Kludge around a bug that results from printf() assuming that</title>
<updated>2003-03-14T04:48:09Z</updated>
<author>
<name>David Schultz</name>
<email>das@FreeBSD.org</email>
</author>
<published>2003-03-14T04:48:09Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=3ba6b6dd9dcba1668e44f5a0bc4212f1cbf3a696'/>
<id>urn:sha1:3ba6b6dd9dcba1668e44f5a0bc4212f1cbf3a696</id>
<content type='text'>
dtoa() is buggy.  The bug would cause incorrect output to be
generated when format strings such as '%5.0f' were used with
nonzero numbers whose magnitude is less than 1.

Reported by:	df(1) by way of periodic(8)
Reviewed by:	mike
</content>
</entry>
<entry>
<title>Replace our ancient dtoa/strtod implementation with the gdtoa</title>
<updated>2003-03-12T20:30:00Z</updated>
<author>
<name>David Schultz</name>
<email>das@FreeBSD.org</email>
</author>
<published>2003-03-12T20:30:00Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=6a66acb565dde6d5b0ee52eef2a631fbb09df153'/>
<id>urn:sha1:6a66acb565dde6d5b0ee52eef2a631fbb09df153</id>
<content type='text'>
package, a more recent, generalized set of routines.  Among the
changes:
- Declare strtof() and strtold() in stdlib.h.
- Add glue to libc to support these routines for all kinds
  of ``long double''.
- Update printf() to reflect the fact that dtoa works slightly
  differently now.

As soon as I see that nothing has blown up, I will kill
src/lib/libc/stdlib/strtod.c.  Soon printf() will be able
to use the new routines to output long doubles without loss
of precision, but numerous bugs in the existing code must
be addressed first.

Reviewed by:	bde (briefly), mike (mentor), obrien
</content>
</entry>
</feed>
