summaryrefslogtreecommitdiffstats
path: root/lib/libc/stdio
Commit message (Collapse)AuthorAgeFilesLines
* Rework the floating point code in printf(). Significant changes:das2003-04-052-151/+191
| | | | | | | | | | | | | | | | | | - 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@
* Add missing #include to unbreak previous commit.das2003-04-051-0/+1
|
* Correct some buffer sizes.das2003-04-053-23/+42
| | | | | | | | | | - __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.
* Merge vfprintf.c revision 1.52.tjr2003-03-141-2/+2
|
* Kludge around a bug that results from printf() assuming thatdas2003-03-141-1/+1
| | | | | | | | | 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
* Unexpand RCS tag.tjr2003-03-141-1/+1
|
* MFp4: Catch up to recent __dtoa() interface changes and removal of cvt()'stjr2003-03-131-11/+10
| | | | last argument.
* Replace our ancient dtoa/strtod implementation with the gdtoadas2003-03-121-9/+10
| | | | | | | | | | | | | | | | | | 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
* MFp4: Add the standard "the {fgetws,fputws} function will fail if" texttjr2003-03-092-0/+6
| | | | to the Errors section.
* mdoc(7) police: markup laundry.ru2003-02-234-10/+12
|
* Fix the description for mkdtemp(), which creates directories, not files.gshapiro2003-02-191-1/+1
| | | | | Submitted by: Murray S. Kucherawy <msk@blackops.org> X-MFC after: re approval
* Eliminate 61 warnings emitted at WARNS=2 (leaving 53 to go).nectar2003-02-161-2/+2
| | | | | | | Only warnings that could be fixed without changing the generated object code and without restructuring the source code have been handled. Reviewed by: /sbin/md5
* Fix use of an uninitialized pointer introduced in a previous revision.mtm2003-02-061-0/+1
| | | | Approved by: markm (mentor)(implicit)
* Back out previous. Many people disagreed with removing the warning.tjr2003-01-301-0/+8
|
* Remove runtime warning about gets().tjr2003-01-301-8/+0
|
* Lock stdin on entry, unlock on return, use __sgetc() instead of getchar()tjr2003-01-301-5/+9
| | | | | to avoid locking the stream for each character and to avoid input being scattered among multiple threads.
* Remove part of my stateful locale patch that slipped into the previous rev.tjr2003-01-261-3/+0
|
* Initial implementation of the C99 feature whereby calling freopen() withtjr2003-01-262-2/+94
| | | | | | | | | | a NULL filename argument allows a stream's mode to be changed. At the moment it just recycles the old file descriptor instead of storing the filename somewhere and using that to reopen the file, as the standard seems to require. Strictly conforming C99 applications probably can't tell the difference but POSIX ones can. PR: 46791
* Lock the stream before calling __sfileno() to retrieve the file descriptor.tjr2003-01-131-2/+10
| | | | 1003.1-2001 requires that fileno() behave as if it locks the stream.
* Add missing word to "Return Values" section.tjr2003-01-131-0/+1
|
* The macro versions of putc() and putchar() are gone.tjr2003-01-101-9/+3
|
* There is no macro version of getc() anymore.tjr2003-01-101-2/+1
|
* Bring the list of function-like macros up to date with reality.tjr2003-01-101-28/+20
|
* spell multiple correctly.alfred2003-01-101-1/+1
|
* Document clearerr_unlocked(), feof_unlocked(), ferror_unlocked()tjr2003-01-102-3/+38
| | | | and fileno_unlocked().
* Add a manual page for flockfile(), ftrylockfile(), and funlockfile().tjr2003-01-102-1/+106
|
* Document getc_unlocked(), getchar_unlocked(), putc_unlocked(),tjr2003-01-103-6/+68
| | | | and putchar_unlocked().
* Add function versions of getchar_unlocked(), getc_unlocked(),tjr2003-01-102-1/+96
| | | | | | putchar_unlocked(), putc_unlocked(), feof_unlocked(), ferror_unlocked(), clearerr_unlocked(), and fileno_unlocked(). The first four are required by POSIX. The rest are provided for consistency.
* Remove an unused variable: mbresult.tjr2003-01-071-1/+0
|
* #include <stdlib.h> for free()'s prototype.tjr2003-01-071-0/+1
|
* Note that the printf(3) and scanf(3) family of functions don't deal withtjr2003-01-062-2/+14
| | | | multibyte characters in the format string correctly.
* #include "local.h" to make __svfscanf()'s prototype visible.tjr2003-01-033-0/+3
|
* Reset the stream orientation to 0 (unoriented) in freopen(), as requiredtjr2003-01-031-0/+1
| | | | by the C standard.
* mdoc(7) police: Deal with self-xrefs.ru2002-12-241-1/+1
|
* Document the fact that the printf() family of functions return negativetjr2002-12-201-2/+14
| | | | | | | values (EOF in our case) on error, and some of the possible errno values in an Errors section. PR: 39257
* C99 standardised the vscanf() family of functions, update Standardstjr2002-12-201-2/+5
| | | | section to reflect this.
* Write the message to stderr, not file descriptor 2, so that perror()tjr2002-12-191-1/+7
| | | | writes to the correct stream if stderr has been redirected with freopen().
* Use strerror_r() to format the error message so that strerror()'s statictjr2002-12-191-1/+4
| | | | | | | | buffer does not get clobbered. ISO/IEC 9899:1999 7.21.6.2 3: "The implementation shall behave as if no library function calls the strerror function."
* mdoc(7) police: "The .Fa argument.".ru2002-12-195-8/+10
|
* mdoc(7) police: Fixed abuses of the .Ar and .Em macros.ru2002-12-181-2/+2
|
* mdoc(7) police: "The .Fn function".ru2002-12-185-5/+21
|
* mdoc(7) police: tiny nits.ru2002-12-091-4/+4
| | | | Approved by: re
* Consistently mark std(in|out|err) with .Dv, because that's how theyru2002-12-0412-17/+17
| | | | | | | are marked up in stdio(3), and because they are defined expressions of type "FILE *". Approved by: re
* mdoc(7) police: markup overhaul.ru2002-12-046-14/+22
| | | | Approved by: re
* mdoc(7) police: formatting nits.ru2002-11-291-1/+1
| | | | Approved by: re
* libc_r wasn't so tied to libc for 22 months.ru2002-11-181-3/+1
|
* bde points out that the LIBC_MAJOR macro doesn't exist and requestsimp2002-11-141-3/+6
| | | | | | | that we not use it here. In its place I've put a comment about the current state of play. Submitted by: bde
* Restore Peter's version of static __sF. There's too much pain for itimp2002-11-101-1/+4
| | | | | | | | | | | | to be static for 5.0. I may remove this for 5.1 or 5.2. No more binaries or libarires will be generated with __sF starting as of yesterday. Originally the plan had been to eliminate this for 5.0, but we didn't get the __std{in,out,err}p changes merged into -stable until yesterday (rather than in September 2001 like it should have been). Given that didn't happen on time, we can't do the other part of the scheme now. # Please do not change this without talking to me first.
* Backout "compatibility hack" for __sF.alfred2002-11-042-9/+1
| | | | Requested by: Steve Kargl <sgk@troutmask.apl.washington.edu> (submitter)
* Provide a hook to make __sF visible outside of libc for commercial appsalfred2002-11-022-1/+9
| | | | | | if WANT_COMPAT4_STDIO is defined when compiling libc. Submitted by: Steve Kargl <sgk@troutmask.apl.washington.edu>
OpenPOWER on IntegriCloud