Corinna Vinschen
414e794811
Fix re-initialization of FILE flags and mbstate in freopen
...
* libc/stdio/freopen.c (_freopen_r): Only reset __SWID bit per SUSv4.
* libc/stdio64/freopen64.c (_freopen64_r): Add missing resetting of
flag values and _mbstate.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2015-12-08 18:44:23 +01:00
Corinna Vinschen
fbace81684
Import correctly working strtold from David M. Gay.
...
* libc/stdlib/Makefile.am (GENERAL_SOURCES): Add strtodg.c and
strtorx.c.
* libc/stdlib/Makefile.in: Regenerate.
* libc/stdlib/strtodg.c: New file implementing generic string to long
double conversion.
* libc/stdlib/strtorx.c: New file, implementing IEEE format string to
long double conversion.
* libc/stdlib/mprec.h (_strtodg_r): Declare.
(_strtorx_r): Declare.
* libc/stdlib/gdtoa.h (__UShort): Define.
* libc/stdlib/strtold.c (__flt_rounds): Define for i386 and x86_64
target.
(FLT_ROUNDS): Define, as 0 on platforms missing a __flt_rounds
function.
(_strtold_r): Converted from strtold. Call _strtorx_r on targets
supporting distinct long doubles.
(strtold): Just call _strtold_r.
* libc/include/stdlib.h (_strtold_r): Declare.
* libc/stdlib/ldtoa.c (_strtold): Comment out. Explain why.
* libc/stdio/vfscanf.c (__SVFSCANF_R): Call _strtold_r instead of
_strtold.
* libc/machine/powerpc/vfscanf.c (__svfscanf_r): Ditto.
* common.din (strtold): Drop redirection to _strtold.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2015-11-20 18:14:58 +01:00
Jon Turney
bdc6169381
Simplify the markup for sprintf and swprintf documentation
...
- move the description of the alternative form produced with the # flag from a
nested table to an additional table
2015-11-12 Jon Turney <jon.turney@dronecode.org.uk>
* libc/stdio/sprintf.c: Simplify documentation markup.
* libc/stdio/swprintf.c: Ditto.
Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk>
2015-11-19 11:39:52 +00:00
Jon Turney
21e6ba20ae
Improve markup of sscanf and swscanf documentation
...
- use bullet points to separate width, size and type sections, rather than using
rows in an enormous table, for consistency with sprintf and swprintf.
- use code markup for size bullet point for consistency
- use a texinfo multitable for description of the size flags, rather than some
preformatted text
- tidy up some whitespace so type flags are all aligned
2015-11-12 Jon Turney <jon.turney@dronecode.org.uk>
* libc/stdio/sscanf.c: Improve documentation markup.
* libc/stdio/swscanf.c: Ditto.
Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk>
2015-11-19 11:39:49 +00:00
Jeff Johnston
0631279394
Move duplicated documentation rules to Makefile.shared
...
- Also, harmonize libm to use CHEWOUT_FILES like libc, rather than chobj.
Update documentation appropriately.
* HOWTO: Update.
* Makefile.shared: Move documentation rules to here...
* libc/argz/Makefile.am: ... from here ...
* libc/ctype/Makefile.am: ... and here.
* libc/errno/Makefile.am: Ditto.
* libc/iconv/Makefile.am: Ditto.
* libc/iconv/ccs/Makefile.am : Ditto.
* libc/iconv/ces/Makefile.am: Ditto.
* libc/iconv/lib/Makefile.am: Ditto.
* libc/locale/Makefile.am: Ditto.
* libc/misc/Makefile.am: Ditto.
* libc/posix/Makefile.am: Ditto.
* libc/reent/Makefile.am: Ditto.
* libc/search/Makefile.am: Ditto.
* libc/stdio/Makefile.am: Ditto.
* libc/stdio64/Makefile.am: Ditto.
* libc/stdlib/Makefile.am : Ditto.
* libc/string/Makefile.am: Ditto.
* libc/syscalls/Makefile.am: Ditto.
* libc/time/Makefile.am : Ditto.
* libc/unix/Makefile.am: Ditto.
* libc/xdr/Makefile.am: Ditto.
* libm/common/Makefile.am: Ditto.
* libm/complex/Makefile.am: Ditto.
* libm/math/Makefile.am: Ditto.
* libm/mathfp/Makefile.am: Ditto.
2015-11-02 18:02:39 -05:00
Jeff Johnston
72e18faf62
Add missing semicolons to prototypes.
...
* libc/stdio/fseek.c: Add missing semicolons to prototypes in
SYNOPSIS.
* libc/stdio/fwide.c: Ditto.
* libc/stdio64/fseeko64.c: Ditto.
* libc/string/strtok.c: Ditto.
* libc/string/wcstok.c: Ditto.
* libm/math/w_cosh.c: Ditto.
* libm/math/w_fmod.c: Ditto.
* libm/mathfp/s_cosh.c: Ditto.
* libm/mathfp/s_fmod.c: Ditto.
2015-11-02 16:34:49 -05:00
Shoichi Sakon
001ef5af39
Fix wscanf family positional parameter handling in %lc, %ls, %l[]
...
* libc/stdio/vfwscanf.c (__SVFWSCANF_R): Convert wrong usage of va_arg
to GET_ARG in %lc, %ls nad %l[] cases. Fix unterminated string in %l[]
case.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2015-08-03 21:51:35 +02:00
Sebastian Huber
757c0871f7
Prevent use of uninitialized file lock
...
The CHECK_INIT() is necessary before the _newlib_flockfile_start() since
this would use otherwise acquire an uninitialized lock which gets
initialized after this leading to a corrupt release.
newlib/ChangeLog
2015-07-01 Sebastian Huber <sebastian.huber@embedded-brains.de>
libc/stdio/fputs.c (_puts_r): Add missing CHECK_INIT().
libc/stdio/gets.c (_gets_r): Add missing _REENT_SMALL_CHECK_INIT() and
CHECK_INIT(). Use _stdin_r() to get the file pointer instead of stdin.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2015-07-02 09:38:06 +02:00
Jon TURNEY
166d86c9d4
Regenerate Makefile.in
...
Regenerate Makefile.in with changes in commits 153385d8
and 433aad91
2015-06-29 Jon Turney <jon.turney@dronecode.org.uk>
* libc/ctype/Makefile.in: Regenerate.
* libc/posix/Makefile.in: Ditto.
* libc/stdio/Makefile.in: Ditto.
* libc/stdio64/Makefile.in: Ditto.
* libc/stdlib/Makefile.in: Ditto.
* libc/string/Makefile.in: Ditto.
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2015-06-29 12:29:50 +01:00
Jon TURNEY
433aad912d
Don't chew files which contain no documentation markup
...
Don't chew files which contain no documentation markup.
Neither of the alternatives for MALLOCR (mallocr.c or nano-mallocr.c) contain
any documentation markup.
2015-06-23 Jon Turney <jon.turney@dronecode.org.uk>
* libc/stdlib/Makefile.am (CHEWOUT_FILES): Remove $(MALLOCR).def.
* libc/stdio/Makefile.am (CHEWOUT_FILES): Remove getwc.def and
putwc.def.
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2015-06-24 12:23:49 +01:00
Jon TURNEY
958c953416
Fix mismatched parentheses in documentation.
...
2015-06-23 Jon Turney <jon.turney@dronecode.org.uk>
* libc/locale/locale.c: Fix mismatched parentheses in
documentation.
* libc/locale/locale.tex: Ditto.
* libc/stdio/fgetwc.c: Ditto.
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2015-06-24 12:23:25 +01:00
Jon TURNEY
eb61ffe8dd
Fix an inconsistent use of '.' in FUNCTION
...
Fix an inconsistent use of '.' to separate function names in FUNCTION. ',' is
used everywhere else.
2015-06-23 Jon Turney <jon.turney@dronecode.org.uk>
* libc/stdio/fread.c: Fix inconsistent use of '.' to separate
function names in FUNCTION mark up.
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2015-06-23 20:56:15 +01:00
Jon TURNEY
6c75f6fcb2
Correct a non-ANSI prototype in SYNOPSIS
...
2015-06-23 Jon Turney <jon.turney@dronecode.org.uk>
* libc/stdio/getchar_u.c: Fix a non-ANSI prototype in SYNOPSIS.
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2015-06-23 17:30:17 +01:00
Jon TURNEY
42e040a448
Fix makedoc markup used in texinfo source
...
2015-06-23 Jon Turney <jon.turney@dronecode.org.uk>
* libc/signal/signal.tex: Use texinfo not makedoc markup.
* libc/stdio/stdio.tex: Ditto.
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2015-06-23 16:14:39 +01:00
Yaakov Selkowitz
968738f9b1
Implement BSD/GNU unlocked stdio extensions.
...
* libc/include/stdio.h (clearerr_unlocked, feof_unlocked,
ferror_unlocked, fflush_unlocked, fgetc_unlocked, fgets_unlocked,
fileno_unlocked, fputc_unlocked, fputs_unlocked, fread_unlocked,
fwrite_unlocked): Declare.
* libc/include/wchar.h (fgetwc_unlocked, fgetws_unlocked,
fputwc_unlocked, fputws_unlocked, getwc_unlocked, getwchar_unlocked,
putwc_unlocked, putwchar_unlocked): Declare.
* libc/stdio/Makefile.am (ELIX_4_SOURCES): Add clearerr_u.c,
feof_u.c, ferror_u.c, fflush_u.c, fgetc_u.c, fgets_u.c, fgetwc_u.c,
fgetws_u.c, fileno_u.c, fputc_u.c, fputs_u.c, fputwc_u.c, fputws_u.c,
fread_u.c, fwrite_u.c, getwc_u.c, getwchar_u.c, putwc_u.c, putwchar_u.c.
Add necessary dependencies.
* libc/stdio/Makefile.in: Regenerate.
* libc/stdio/clearerr.c: Document unlocked variant.
* libc/stdio/clearerr_u.c: New file.
* libc/stdio/feof.c: Document unlocked variant.
* libc/stdio/feof_u.c: New file.
* libc/stdio/ferror.c: Document unlocked variant.
* libc/stdio/ferror_u.c: New file.
* libc/stdio/fflush.c: Add __IMPL_UNLOCKED__ overrides.
Document unlocked variants.
* libc/stdio/fflush_u.c: New file.
* libc/stdio/fgetc.c: Document unlocked variants.
* libc/stdio/fgetc_u.c: New file.
* libc/stdio/fgets.c: Add __IMPL_UNLOCKED__ overrides.
Document unlocked variants.
* libc/stdio/fgets_u.c: New file.
* libc/stdio/fgetwc.c: Document unlocked variants.
(__fgetwc): Make non-static.
* libc/stdio/fgetwc_u.c: New file.
* libc/stdio/fgetws.c: Add __IMPL_UNLOCKED__ overrides.
Document unlocked variants.
* libc/stdio/fgetws_u.c: New file.
* libc/stdio/fileno.c: Document unlocked variant.
* libc/stdio/fileno_u.c: New file.
* libc/stdio/fputc.c: Document unlocked variants.
* libc/stdio/fputc_u.c: New file.
* libc/stdio/fputs.c: Add __IMPL_UNLOCKED__ overrides.
Document unlocked variants.
* libc/stdio/fputs_u.c: New file.
* libc/stdio/fputwc.c: Document unlocked variants.
(__fputwc): Make non-static.
* libc/stdio/fputwc_u.c: New file.
* libc/stdio/fputws.c: Add __IMPL_UNLOCKED__ overrides.
Document unlocked variants.
* libc/stdio/fputws_u.c: New file.
* libc/stdio/fread.c: Add __IMPL_UNLOCKED__ overrides.
Document unlocked variants.
* libc/stdio/fread_u.c: New file.
* libc/stdio/fwrite.c: Add __IMPL_UNLOCKED__ overrides.
Document unlocked variants.
* libc/stdio/fwrite_u.c: New file.
* libc/stdio/getwc_u.c: New file.
* libc/stdio/getwchar.c: Document unlocked variants.
* libc/stdio/getwchar_u.c: New file.
* libc/stdio/local.h: Define locking macros as empty ifdef
__IMPL_UNLOCKED__.
(__fgetwc, __fputwc): Declare.
* libc/stdio/putwc_u.c: New file.
* libc/stdio/putwchar.c: Document unlocked variants.
* libc/stdio/putwchar_u.c: New file.
2014-12-18 14:55:21 +00:00
Corinna Vinschen
2a06c6dcc4
* stdio.tex: Add menu entries for __fsetlocking and stdio_ext.
...
* stdio_ext.c: Add "stdio_ext" to synopsis.
2014-12-18 10:08:09 +00:00
Yaakov Selkowitz
6485fc66f2
* libc/include/stdio.h (__SNLK): Define.
...
* libc/include/stdio_ext.h (FSETLOCKING_QUERY, FSETLOCKING_INTERNAL,
FSETLOCKING_BYCALLER): Define.
(__fsetlocking): Declare.
* libc/stdio/Makefile.am: Build fsetlocking.c.
* libc/stdio/Makefile.in: Regenerate.
* libc/stdio/fsetlocking.c: New file.
* libc/stdio/local.h (_newlib_flockfile_start): Make _flockfile
call dependent on __SNLK flag.
(_newlib_flockfile_exit, _newlib_flockfile_end): Ditto for
_funlockfile calls.
Define all locking macros as empty if __SINGLE_THREAD__.
* libc/stdio/stdio.tex: Include fsetlocking.def.
2014-12-15 18:22:56 +00:00
Yaakov Selkowitz
6f34876e5e
* libc/include/stdio_ext.h: Rename __fwriteable to __fwritable.
...
[!__GNUC__]: Declare real functions for the macros, and make
the macros conditional on !__cplusplus.
* libc/stdio/Makefile.am (ELIX_4_SOURCES): Add stdio_ext.c.
(CHEWOUT_FILES): Add stdio_ext.def.
* libc/stdio/Makefile.in: Regenerate.
* libc/stdio/stdio.tex: Include stdio_ext.def.
* libc/stdio/stdio_ext.c: New file.
2014-12-11 16:53:32 +00:00
Corinna Vinschen
556b13a0c2
* libc/stdio/nano-vfprintf_i.c (_printf_i): Use LONGINT when void* is
...
larger than an int.
2014-11-20 14:05:28 +00:00
Corinna Vinschen
97e2f27aa1
* libc/stdio/nano-vfprintf_i.c (_printf_i): Use Newlib approach to
...
handle string that might be not nul-terminated.
* testsuite/newlib.stdio/nulprintf.c: New test.
2014-11-06 11:08:14 +00:00
Corinna Vinschen
28e1bd0159
* libc/stdio/vfprintf.c (_VFPRINTF_R): Remove unnecessary comparison.
2014-10-29 11:06:42 +00:00
Corinna Vinschen
e7565f1088
* libc/stdio/findfp.c (_cleanup_r): Call _fflush_r when configuration
...
option "--enable-lite-exit" is in effect. Refactor the code.
2014-09-05 09:42:15 +00:00
Corinna Vinschen
1ec7de7271
* libc/stdio/fwalk.c (_fwalk_reent): Remove redundant test.
2014-09-05 09:31:32 +00:00
Corinna Vinschen
f703e6aa08
* libc/stdio/findfp.c (std): Don't inline when optimizing for code size.
2014-08-14 08:33:00 +00:00
Jeff Johnston
d34336767e
2014-07-04 Bin Cheng <bin.cheng@arm.com>
...
* README (--enable-newlib-nano-formatted-io): Describe.
* acconfig.h (_NANO_FORMATTED_IO): Undef.
* newlib.hin (_NANO_FORMATTED_IO): Undef.
* configure.in (--enable-newlib-nano-formatted-io): New option.
* configure: Regenerated.
* libc/configure.in (--enable-newlib-nano-formatted-io): New option.
* libc/configure: Regenerated.
* libc/stdio/Makefile.am (NEWLIB_NANO_FORMATTED_IO): Support new
configuration option.
* libc/stdio/Makefile.in: Regenerated.
* libc/stdio/asnprintf.c (_asniprintf_r, asniprintf): Use
_NANO_FORMATTED_IO to declare alias prototypes.
* libc/stdio/asprintf.c (_asiprintf_r, asiprintf): Ditto.
* libc/stdio/dprintf.c (_diprintf_r, diprintf): Ditto.
* libc/stdio/fprintf.c (_fiprintf_r, fiprintf): Ditto.
* libc/stdio/fscanf.c (fiscanf, _fiscanf_r): Ditto.
* libc/stdio/printf.c (_iprintf_r, iprintf): Ditto.
* libc/stdio/scanf.c (iscanf, _iscanf_r): Ditto.
* libc/stdio/snprintf.c (_sniprintf_r, sniprintf): Ditto.
* libc/stdio/sprintf.c (_siprintf_r, siprintf): Ditto.
* libc/stdio/sscanf.c (siscanf, _siscanf_r): Ditto.
* libc/stdio/vasnprintf.c (_vasniprintf_r, vasniprintf): Ditto.
* libc/stdio/vasprintf.c (vasiprintf, _vasiprintf_r): Ditto.
* libc/stdio/vdprintf.c (_vdiprintf_r, vdiprintf): Ditto.
* libc/stdio/vprintf.c (viprintf, _viprintf_r): Ditto.
* libc/stdio/vscanf.c (viscanf, _viscanf_r): Ditto.
* libc/stdio/vsnprintf.c (vsniprintf, _vsniprintf_r): Ditto.
* libc/stdio/vsprintf.c (vsiprintf, _vsiprintf_r): Ditto.
* libc/stdio/vsscanf.c (vsiscanf, _vsiscanf_r): Ditto.
* libc/stdio/nano-vfprintf.c: New file.
* libc/stdio/nano-vfprintf_float.c: New file.
* libc/stdio/nano-vfprintf_i.c: New file.
* libc/stdio/nano-vfprintf_local.h: New file.
* libc/stdio/nano-vfscanf.c: New file.
* libc/stdio/nano-vfscanf_float.c: New file.
* libc/stdio/nano-vfscanf_i.c: New file.
* libc/stdio/nano-vfscanf_local.h: New file.
2014-07-04 17:21:45 +00:00
Jeff Johnston
d3925b72d5
2014-04-04 Ashish Kapania <akapania@ti.com>
...
* configure.host (sys_dir, newlib_cflags): Set sys_dir to tirtos and use
-D__DYNAMIC_REENT__ and -DMALLOC_PROVIDED compiler options for TIRTOS
target.
* libc/stdio/local.h (_STDIO_CLOSE_PER_REENT_STD_STREAMS): Change #ifdef
to not define this macro when __tirtos__ is defined.
* libc/sys/tirtos : Add support for TIRTOS.
* libc/sys/tirtos/Makefile.am, libc/sys/tirtos/lock.c: New files.
* libc/sys/tirtos/configure.in, libc/sys/tirtos/include/sys/lock.h: Ditto.
2014-04-04 21:40:59 +00:00
Corinna Vinschen
23c0f21594
* libc/stdio/open_memstream.c (internal_open_memstream_r): Initialize
...
c->pos to 0.
2014-02-20 13:32:34 +00:00
Corinna Vinschen
7a7e4d4d95
Introduce _STDIO_BSD_SEMANTICS flag to switch fclose/exit file flushing
...
semantics from POSIX to BSD.
* libc/stdio/fclose.c (_fclose_r): Conditionalize file flushing on
_STDIO_BSD_SEMANTICS. Call __sflush_r rather than _fflush_r. Add
comment.
* libc/stdio/fflush.c (__sflushw_r): New function, only available
if _STDIO_BSD_SEMANTICS is defined.
* libc/stdio/findfp.c (_cleanup_r): Call _fwalk_reent rather than
_fwalk. Conditionalize cleanup function call on _STDIO_BSD_SEMANTICS.
Add comments. Add FIXME.
* libc/stdio/local.h (__sflushw_r): Declare if _STDIO_BSD_SEMANTICS is
defined.
2014-01-17 10:55:32 +00:00
Corinna Vinschen
281924766d
* libc/stdio/vfwscanf.c (__SVFWSCANF_R): Fix fetching decimal_point in
...
!_MB_CAPABLE as well as in !__HAVE_LOCALE_INFO_EXTENDED__ case.
2013-12-19 18:50:00 +00:00
Corinna Vinschen
576b7804d6
* vfscanf.c (BUF): Change definition to take multibyte decimal point
...
into account.
(__SVFSCANF_R): Handle radix char language-dependent
per POSIX.
(__SVFWSCANF_R): Ditto.
2013-12-18 19:23:33 +00:00
Joel Sherrill
380c9f6165
2013-11-26 Julio Gutierrez <jgutleyva@gmail.com>
...
*libc/include/wchar.h: Add restrict keyword.
*libc/stdio/fgetws.c (fgetws): ditto.
*libc/stdio/fputws.c (fputws): ditto.
*libc/stdio/fwprintf.c (fwprintf): ditto.
*libc/stdio/fwscanf.c (fwscanf): ditto.
*libc/stdio/swprintf.c (swprintf): ditto.
*libc/stdio/swscanf.c (swscanf): ditto.
*libc/stdio/vfwprintf.c (vfwprintf): ditto.
*libc/stdio/vfwscanf.c (vfwscanf): ditto.
*libc/stdio/vswprintf.c (vswprintf): ditto.
*libc/stdio/vswscanf.c (vswscanf): ditto.
*libc/stdio/vwprintf.c (vwprintf): ditto.
*libc/stdio/vwscanf.c (vwscanf): ditto.
*libc/stdio/wprintf.c (wprintf): ditto.
*libc/stdio/wscanf.c (wscanf): ditto.
*libc/stdlib/mbrlen.c (mbrlen): ditto.
*libc/stdlib/mbrtowc.c (mbrtowc): ditto.
*libc/stdlib/mbsnrtowcs.c (mbsnrtowcs): ditto.
*libc/stdlib/mbsrtowcs.c (mbsrtowcs): ditto.
*libc/stdlib/wcrtomb.c (wcrtomb): ditto.
*libc/stdlib/wcsnrtombs.c (wcsnrtombs): ditto.
*libc/stdlib/wcsrtombs.c (wcsrtombs): ditto.
*libc/stdlib/wcstod.c (wcstod): ditto.
*libc/stdlib/wcstol.c (wcstol): ditto.
*libc/stdlib/wcstold.c (wcstold): ditto.
*libc/stdlib/wcstoll.c (wcstoll): ditto.
*libc/stdlib/wcstoul.c (wcstoul): ditto.
*libc/stdlib/wcstoull.c (cstoull): ditto.
*libc/string/wcpcpy.c (wcpcpy): ditto.
*libc/string/wcpncpy.c (wcpncpy): ditto.
*libc/string/wcscat.c (wcscat): ditto.
*libc/string/wcscpy.c (wcscpy): ditto.
*libc/string/wcsncat.c (wcsncat): ditto.
*libc/string/wcsncpy.c (wcsncpy): ditto.
*libc/string/wcsstr.c (wcsstr): ditto.
*libc/string/wcstok.c (wcstok): ditto.
*libc/string/wcsxfrm.c (wcsxfrm): ditto.
*libc/string/wmemcpy.c (wmemcpy): ditto.
2013-11-26 17:21:01 +00:00
Joel Sherrill
481cb456a4
2013-11-18 Sahil Patnayakuni <sahilp@oarcorp.com>
...
* libc/include/stdio.h, libc/machine/powerpc/vfscanf.c,
libc/machine/spu/fgetpos.c, libc/machine/spu/fgets.c,
libc/machine/spu/fopen.c, libc/machine/spu/fputs.c,
libc/machine/spu/fread.c, libc/machine/spu/freopen.c,
libc/machine/spu/fwrite.c, libc/machine/spu/setbuf.c,
libc/machine/spu/vfprintf.c, libc/machine/spu/vfscanf.c,
libc/machine/spu/vsnprintf.c, libc/machine/spu/vsprintf.c,
libc/machine/spu/vsscanf.c, libc/stdio/asnprintf.c,
libc/stdio/asprintf.c, libc/stdio/dprintf.c,
libc/stdio/fgetpos.c, libc/stdio/fgets.c,
libc/stdio/fmemopen.c, libc/stdio/fopen.c,
libc/stdio/fprintf.c, libc/stdio/fputs.c,
libc/stdio/fread.c, libc/stdio/freopen.c,
libc/stdio/fscanf.c, libc/stdio/fwrite.c,
libc/stdio/printf.c, libc/stdio/scanf.c,
libc/stdio/setbuf.c, libc/stdio/snprintf.c,
libc/stdio/sprintf.c, libc/stdio/sscanf.c,
libc/stdio/vdprintf.c, libc/stdio/vprintf.c,
libc/stdio/vscanf.c, libc/stdio/vsnprintf.c,
libc/stdio/vsprintf.c, libc/stdio/vsscanf.c: Add restrict keyword.
2013-11-18 17:28:06 +00:00
Corinna Vinschen
2a98b3363e
* libc/stdio/fvwrite.c: Allow writing in larger chunks for fully
...
buffered and unbuffered files, to improve write performance.
2013-11-04 14:18:44 +00:00
Corinna Vinschen
a5f316d8cf
* libc/stdio/fvwrite.h: change type of uio_resid from int to size_t to
...
fix fwrite() of > 2GByte buffers.
2013-10-31 10:35:54 +00:00
Corinna Vinschen
0c3d8e5ab5
* libc/include/stdio.h (funopen): Change prototype of
...
__readfn and __writefn parameter to match new definition of
FILE's _read and _write methods.
(_funopen_r): Ditto.
(funopen): Ditto.
(_funopen_r): Ditto.
* libc/include/sys/config.h (_READ_WRITE_BUFSIZE_TYPE) Define
as type int if not already defined. Add comment to explain.
* libc/include/sys/reent.h: Include stddef.h.
(struct __sFILE): Change type of last parameter in declaration
of _read and _write methods to _READ_WRITE_BUFSIZE_TYPE.
(struct __sFILE64): Ditto.
* libc/stdio/local.h (__sread): Declare with last parameter set
to _READ_WRITE_BUFSIZE_TYPE.
(__seofread): Ditto.
(__swrite): Ditto.
(__swrite64): Ditto.
* libc/stdio/fvwrite.c (__sfvwrite_r): Change type of local
variables w and s to _READ_WRITE_RETURN_TYPE.
* libc/stdio/fflush.c (__sflush_r): Change type of local variables
n and t to _READ_WRITE_BUFSIZE_TYPE and _READ_WRITE_RETURN_TYPE.
Add local variables flags to keep _flags value.
* libc/stdio/fmemopen.c (fmemreader): Align to above change.
(fmemwriter): Ditto.
* libc/stdio/fopencookie.c (fcreader): Ditto.
(fcwriter): Ditto.
* libc/stdio/funopen.c (funread): Ditto.
(funwrite): Ditto.
(funreader): Ditto.
(funwriter): Ditto.
* libc/stdio/open_memstream.c (memwriter): Ditto.
* libc/stdio/stdio.c (__sread): Ditto.
(__seofread): Ditto.
(__swrite): Ditto.
* libc/stdio64/stdio64.c (__swrite64): Ditto.
2013-10-23 10:04:43 +00:00
Corinna Vinschen
56d5fc7cda
* libc/configure.in (--enable-newlib-wchar-orient): Remove.
...
* libc/configure: Regenerated.
* libc/stdio/Makefile.am (NEWLIB_WIDE_ORIENT): Remove.
* libc/stdio/Makefile.in: Regenerated.
2013-08-12 11:31:53 +00:00
Corinna Vinschen
5dad9defd0
* libc/stdio/fwalk.c (_fwalk): Remove redundant test.
2013-07-09 13:07:16 +00:00
Corinna Vinschen
82c19d335a
* acconfig.h (_UNBUF_STREAM_OPT): Undefine.
...
* newlib.hin (_UNBUF_STREAM_OPT): Undefine.
* configure.in (--enable-newlib-unbuf-stream-opt): New option.
* configure: Regenerate.
* libc/stdio/vfprintf.c (_VFPRINTF_R): Don't do optimization on
unbuffered stream files.
* libc/stdio/vfwprintf.c (_VFWPRINTF_R): Likewise.
* README: Add description about the option.
* newlib.hin (_UNBUF_STREAM_OPT): Undefine.
* configure.in (--enable-newlib-unbuf-stream-opt): New option.
* configure: Regenerate.
* libc/stdio/vfprintf.c (_VFPRINTF_R): Don't do optimization on
unbuffered stream files.
* libc/stdio/vfwprintf.c (_VFWPRINTF_R): Likewise.
* README: Add description about the option.
2013-06-19 15:58:50 +00:00
Jeff Johnston
b334e6660a
2013-04-29 Sebastian Huber <sebastian.huber@embedded-brains.de>
...
* libc/stdio/local.h (CHECK_INIT): Evaluate argument only once.
(CHECK_STD_INIT): Likewise.
* libc/stdio/fgetc.c (fgetc): Use local variable for _REENT.
* libc/stdio/fgetwc.c (fwgetc): Likewise.
* libc/stdio/fgetws.c (fgetws): Likewise.
* libc/stdio/fputc.c (fputc): Likewise.
* libc/stdio/fputwc.c (fputwc): Likewise.
* libc/stdio/fputws.c (fputws): Likewise.
* libc/stdio/getc.c (getc): Likewise.
* libc/stdio/getchar.c (_getchar_r): Likewise.
* libc/stdio/putc.c (putc): Likewise.
* libc/stdio/putchar.c (putchar): Likewise.
* libc/stdio/scanf.c (scanf): Likewise.
* libc/stdio/setvbuf.c (setvbuf): Likewise.
* libc/stdio/ungetwc.c (ungetwc): Likewise.
* libc/stdio/vfscanf.c (VFSCANF): Likewise.
* libc/stdio/vfwscanf.c (VFWSCANF): Likewise.
* libc/stdio/viprintf.c (viprintf): Likewise.
* libc/stdio/viscanf.c (viscanf): Likewise.
* libc/stdio/vprintf.c (vprintf): Likewise.
* libc/stdio/vscanf.c (vscanf): Likewise.
* libc/stdio/vwprintf.c (vwprintf): Likewise.
* libc/stdio/vwscanf.c (vwscanf): Likewise.
* libc/stdio/wscanf.c (wscanf): Likewise.
* libc/stdlib/ecvtbuf.c (fcvtbuf): Likewise.
(fcvtbuf): Likewise.
(ecvtbuf): Likewise.
(ecvtbuf): Likewise.
* libc/stdlib/mblen.c (mblen): Likewise.
* libc/stdlib/mbrlen.c (mbrlen): Likewise.
* libc/stdlib/mbrtowc.c (mbrtowc): Likewise.
* libc/stdlib/mbtowc.c (mbtowc): Likewise.
* libc/stdlib/rand.c (srand): Likewise.
(rand): Likewise.
* libc/stdlib/wcrtomb.c (wcrtomb): Likewise.
* libc/stdlib/wctob.c (wctob): Likewise.
* libc/stdlib/wctomb.c (wctomb): Likewise.
* libc/string/strtok.c (strtok): Likewise.
* libc/time/asctime.c (asctime): Likewise.
* libc/time/gmtime.c (gmtime): Likewise.
* libc/time/lcltime.c (lcltime): Likewise.
2013-04-29 21:06:23 +00:00
Joel Sherrill
7881a70fad
2013-04-25 Sebastian Huber <sebastian.huber@embedded-brains.de>
...
* libc/stdio/local.h (_STDIO_CLOSE_PER_REENT_STD_STREAMS): New define.
* libc/stdio/findfp.c (_STDIO_CLOSE_PER_REENT_STD_STREAMS): Use define.
2013-04-25 15:29:19 +00:00
Corinna Vinschen
f7a4b388b0
* acconfig.h (_WCHAR_ORIENT): Undef
...
* newlib.hin (_WCHAR_ORIENT): Undef
* configure.in (--enable-newlib-wchar-orient): New option.
* configure: Regenerated.
* libc/configure.in (--enable-newlib-wchar-orient): New option.
* libc/configure: Regenerated.
* libc/stdio/Makefile.am (NEWLIB_WIDE_ORIENT): Use.
* libc/stdio/Makefile.in: Regenerated.
* libc/stdio/local.h (ORIENT): Use _WCHAR_ORIENT to control
the definition. Add alternative definition.
* libc/stdio/vfprintf.c (__sfputs_r, __sprint_r): Use _WCHAR_ORIENT
to control the wide char output.
2013-04-12 12:05:31 +00:00
Jeff Johnston
602cec7f1e
2013-04-10 Bin Cheng <bin.cheng@arm.com>
...
* acconfig.h (_FSEEK_OPTIMIZATION): Undef
* newlib.hin (_FSEEK_OPTIMIZATION): Undef
* configure.in (--disable-newlib-fseek-optimization): New option.
* configure: Regenerated.
* libc/stdio/fflush.c (__sflush_r): Use _FSEEK_OPTIMIZATION to
control fseek optimization.
* libc/stdio/fseeko.c (_fseeko_r): Ditto.
* libc/stdio/makebuf.c (__smakebuf_r): Ditto.
* libc/stdio64/fseeko64.c (_fseeko64_r): Ditto.
2013-04-10 18:47:46 +00:00
Matthew Gretton-Dann
d57416f03d
* libc/stdio/vfieeefp.h (ldieee): Fix typo.
2013-04-08 09:34:35 +00:00
Corinna Vinschen
409c27f834
* acconfig.h (_FVWRITE_IN_STREAMIO): Undefine.
...
* newlib.hin (_FVWRITE_IN_STREAMIO): Undefine.
* configure.in (--disable-newlib-fvwrite-in-streamio): New option.
* configure: Regenerated.
* libc/stdio/fputs.c (_fputs_r): Use _FVWRITE_IN_STREAMIO to
control __sfvwrite_r. Add alternative implementation.
* libc/stdio/fputws.c (_fputws_r): Ditto.
* libc/stdio/fwrite.c (_fwrite_r): Ditto.
* libc/stdio/puts.c (_puts_r): Ditto.
* libc/stdio/vfprintf.c (__ssputs_r, __sfputs_r): New function.
(_VFPRINTF_R): Use _FVWRITE_IN_STREAMIO to control vector buffer.
(__SPRINT): Use _FVWRITE_IN_STREAMIO to control macro definition.
* libc/stdio/vfwprintf.c (_VFWPRINTF_R): Use _FVWRITE_IN_STREAMIO
to control vector buffer.
2013-03-27 09:38:39 +00:00
Joel Sherrill
1ebc8da242
2013-03-26 Sebastian Huber <sebastian.huber@embedded-brains.de>
...
* libc/stdio/local.h (_STDIO_WITH_THREAD_CANCELLATION_SUPPORT):
New define.
* libc/stdio/fclose.c: Use
_STDIO_WITH_THREAD_CANCELLATION_SUPPORT.
* libc/stdio/freopen.c: Likewise.
* libc/stdio64/freopen64.c: Likewise.
2013-03-26 16:07:55 +00:00
Corinna Vinschen
01aff1ea37
* newlib/libc/stdio/findfp.c (glue_with_file): New.
...
(__sfmoreglue): Use glue_with_file to avoid alignment problems.
2013-03-15 13:19:29 +00:00
Corinna Vinschen
3920a99a22
* libc/stdio/vfwprintf.c (_VFWPRINTF_R): Add code to correctly handle
...
's' format specifier on not _MB_CAPABLE targets. Fix a formatting
glitch in _MB_CAPABLE enabled code. Add a missing 'L' specifier.
2013-01-11 20:05:41 +00:00
Jeff Johnston
f2d223bd0f
2012-12-20 Jeff Johnston <jjohnstn@redhat.com>
...
* NEWS: Update with 2.0.0 info.
* README: Ditto.
* acinclude.m4: Change version number to 2.0.0.
* aclocal.m4: Regenerated.
* configure: Ditto.
* Makefile.in: Regenerated.
* doc/aclocal.m4: Ditto.
* doc/configure: Ditto.
* libc/*/aclocal.m4: Ditto.
* libc/*/configure: Ditto.
* libc/libc.texinfo: Ditto.
* libm/*/aclocal.m4: Ditto.
* libm/*/configure: Ditto.
* libm/libm.texinfo: Ditto.
* libc/sys/linux/shared.ld: Add VERS_2.0
2012-12-20 21:10:27 +00:00
Corinna Vinschen
e3132dba59
* libc/stdio/puts.c (_puts_r): Fix typo in previous patch. Add local
...
variable fp for better readability.
2012-12-18 08:54:10 +00:00
Jeff Johnston
0a95d80385
2012-12-17 Jeff Johnston <jjohnstn@redhat.com>
...
* libc/stdio/puts.c: Add fp locking and use _stdout_r macro
to refer to the stream rather than stdout.
2012-12-17 22:44:09 +00:00