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
..
2012-08-08 11:04:18 +00:00
2008-12-11 17:27:56 +00:00
2014-07-04 17:21:45 +00:00
2014-07-04 17:21:45 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2008-10-31 21:08:03 +00:00
2014-07-04 17:21:45 +00:00
2014-01-17 10:55:32 +00:00
2004-04-23 20:01:55 +00:00
2012-05-30 08:58:42 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2013-11-18 17:28:06 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-09-05 09:42:15 +00:00
2007-05-04 02:55:16 +00:00
2004-11-24 00:45:41 +00:00
2012-08-23 04:19:59 +00:00
2013-11-18 17:28:06 +00:00
2013-11-18 17:28:06 +00:00
2013-10-23 10:04:43 +00:00
2014-07-04 17:21:45 +00:00
2012-05-30 08:58:42 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2013-11-18 17:28:06 +00:00
2014-07-04 17:21:45 +00:00
2012-11-29 16:28:30 +00:00
2013-04-10 18:47:46 +00:00
2014-12-15 18:22:56 +00:00
2008-10-31 21:08:03 +00:00
2012-11-29 16:28:30 +00:00
2012-11-29 16:28:30 +00:00
2013-10-23 10:04:43 +00:00
2013-11-04 14:18:44 +00:00
2013-10-31 10:35:54 +00:00
2014-09-05 09:31:32 +00:00
2012-05-30 08:58:42 +00:00
2013-11-26 17:21:01 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2013-11-26 17:21:01 +00:00
2008-10-31 21:08:03 +00:00
2013-04-29 21:06:23 +00:00
2008-10-31 21:08:03 +00:00
2013-04-29 21:06:23 +00:00
2012-05-30 08:58:42 +00:00
2004-04-23 20:01:55 +00:00
2012-05-30 08:58:42 +00:00
2005-10-28 21:21:08 +00:00
2014-12-18 14:55:21 +00:00
2008-12-10 23:43:12 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2007-05-04 02:55:16 +00:00
2005-02-08 01:33:19 +00:00
2014-12-18 14:55:21 +00:00
2013-04-10 18:47:46 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2012-08-08 11:04:18 +00:00
2014-07-04 17:21:45 +00:00
2014-11-20 14:05:28 +00:00
2014-07-04 17:21:45 +00:00
2014-07-04 17:21:45 +00:00
2014-07-04 17:21:45 +00:00
2014-07-04 17:21:45 +00:00
2014-07-04 17:21:45 +00:00
2014-07-04 17:21:45 +00:00
2014-02-20 13:32:34 +00:00
2011-05-25 18:41:10 +00:00
2014-07-04 17:21:45 +00:00
2008-10-31 21:08:03 +00:00
2013-04-29 21:06:23 +00:00
2008-10-31 21:08:03 +00:00
2013-04-29 21:06:23 +00:00
2013-03-27 09:38:39 +00:00
2005-10-28 21:21:08 +00:00
2014-12-18 14:55:21 +00:00
2008-12-10 23:43:12 +00:00
2014-12-18 14:55:21 +00:00
2014-12-18 14:55:21 +00:00
2011-01-28 10:49:11 +00:00
2008-10-31 21:08:03 +00:00
2007-09-18 19:32:43 +00:00
2007-05-25 17:05:09 +00:00
2008-03-11 19:13:30 +00:00
2014-07-04 17:21:45 +00:00
2004-11-24 00:45:41 +00:00
2013-11-18 17:28:06 +00:00
2004-09-16 21:15:14 +00:00
2004-04-23 20:01:55 +00:00
2013-04-29 21:06:23 +00:00
2008-10-31 21:08:03 +00:00
2009-03-11 11:53:22 +00:00
2008-04-14 21:14:55 +00:00
2014-07-04 17:21:45 +00:00
2014-07-04 17:21:45 +00:00
2014-07-04 17:21:45 +00:00
2014-12-18 10:08:09 +00:00
2013-10-23 10:04:43 +00:00
2014-12-18 10:08:09 +00:00
2013-11-26 17:21:01 +00:00
2013-11-26 17:21:01 +00:00
2007-05-17 12:10:29 +00:00
2004-04-23 20:01:55 +00:00
2012-05-30 08:58:42 +00:00
2013-04-29 21:06:23 +00:00
2012-08-08 11:04:18 +00:00
2008-12-11 17:27:56 +00:00
2014-07-04 17:21:45 +00:00
2014-07-04 17:21:45 +00:00
2008-03-07 16:45:04 +00:00
2014-07-04 17:21:45 +00:00
2013-04-08 09:34:35 +00:00
2014-10-29 11:06:42 +00:00
2013-12-18 19:23:33 +00:00
2013-11-26 17:21:01 +00:00
2013-12-19 18:50:00 +00:00
2013-04-29 21:06:23 +00:00
2013-04-29 21:06:23 +00:00
2014-07-04 17:21:45 +00:00
2014-07-04 17:21:45 +00:00
2011-08-19 17:00:32 +00:00
2009-03-11 11:53:22 +00:00
2011-08-19 17:00:32 +00:00
2014-07-04 17:21:45 +00:00
2014-07-04 17:21:45 +00:00
2014-07-04 17:21:45 +00:00
2013-11-26 17:21:01 +00:00
2013-11-26 17:21:01 +00:00
2013-11-26 17:21:01 +00:00
2013-11-26 17:21:01 +00:00
2011-06-14 03:56:05 +00:00
2013-11-26 17:21:01 +00:00
2013-11-26 17:21:01 +00:00
2011-06-14 03:56:05 +00:00