]> pd.if.org Git - pdclib/log
pdclib
11 years agoAnnotate _unlocked stdio as nothrow
Owen Shepherd [Thu, 17 Jan 2013 15:50:27 +0000 (15:50 +0000)]
Annotate _unlocked stdio as nothrow

11 years agoPDCLIB-2 PDCLIB-9 Add single character unicode conversion functions (C11)
Owen Shepherd [Fri, 11 Jan 2013 18:19:11 +0000 (18:19 +0000)]
PDCLIB-2 PDCLIB-9 Add single character unicode conversion functions (C11)

11 years agoPDCLIB-1 Add stub freelocale()
Owen Shepherd [Fri, 11 Jan 2013 18:18:26 +0000 (18:18 +0000)]
PDCLIB-1 Add stub freelocale()

11 years agoPDCLIB-2 PDCLIB-12 Correct surrogate behaviour of internal UTF-16 <-> UTF-32 helper...
Owen Shepherd [Fri, 11 Jan 2013 18:17:56 +0000 (18:17 +0000)]
PDCLIB-2 PDCLIB-12 Correct surrogate behaviour of internal UTF-16 <-> UTF-32 helper functions (although their future is unclear)

11 years agoPDCLIB-2 PDCLIB-9 Correct header entry of mbrtoc32
Owen Shepherd [Fri, 11 Jan 2013 18:17:13 +0000 (18:17 +0000)]
PDCLIB-2 PDCLIB-9 Correct header entry of mbrtoc32

11 years agowin32: stdinit: update to new locale system
Owen Shepherd [Mon, 7 Jan 2013 15:24:29 +0000 (15:24 +0000)]
win32: stdinit: update to new locale system

11 years agowin32: crt0: initialize locale TSS
Owen Shepherd [Mon, 7 Jan 2013 15:23:45 +0000 (15:23 +0000)]
win32: crt0: initialize locale TSS

11 years agowin32: add opt basecodecs
Owen Shepherd [Mon, 7 Jan 2013 15:23:28 +0000 (15:23 +0000)]
win32: add opt basecodecs

11 years agotss_errno: _PDCLIB_errno_func()
Owen Shepherd [Mon, 7 Jan 2013 15:23:08 +0000 (15:23 +0000)]
tss_errno: _PDCLIB_errno_func()

11 years agowin32: update tmpfile return type to be FILE*
Owen Shepherd [Mon, 7 Jan 2013 15:10:33 +0000 (15:10 +0000)]
win32: update tmpfile return type to be FILE*

11 years agowin32: refer to errno, not _PDCLIB_errno
Owen Shepherd [Mon, 7 Jan 2013 15:10:17 +0000 (15:10 +0000)]
win32: refer to errno, not _PDCLIB_errno

11 years agochar16_t/char32_t were incorrectly defined as int*_t rather than uint*_t
Owen Shepherd [Mon, 7 Jan 2013 15:09:19 +0000 (15:09 +0000)]
char16_t/char32_t were incorrectly defined as int*_t rather than uint*_t

11 years agoerrno: parts of old errno system were left in _PDCLIB_int.h
Owen Shepherd [Mon, 7 Jan 2013 15:08:50 +0000 (15:08 +0000)]
errno: parts of old errno system were left in _PDCLIB_int.h

11 years agoPDCLIB-2 PDCLIB-9: Internal mbstates
Owen Shepherd [Tue, 1 Jan 2013 21:38:14 +0000 (21:38 +0000)]
PDCLIB-2 PDCLIB-9: Internal mbstates

11 years agoPDCLIB-1 uselocale
Owen Shepherd [Tue, 1 Jan 2013 21:11:07 +0000 (21:11 +0000)]
PDCLIB-1 uselocale

11 years agoPDCLIB-2 PDCLIB-9 wcrtomb
Owen Shepherd [Tue, 1 Jan 2013 21:09:49 +0000 (21:09 +0000)]
PDCLIB-2 PDCLIB-9 wcrtomb

11 years agoPDCLIB-2 PDCLIB-9 mbrtowc
Owen Shepherd [Tue, 1 Jan 2013 21:08:56 +0000 (21:08 +0000)]
PDCLIB-2 PDCLIB-9 mbrtowc

11 years agoAdd internal aliases for non _l variants
Owen Shepherd [Tue, 1 Jan 2013 21:04:21 +0000 (21:04 +0000)]
Add internal aliases for non _l variants

11 years agoPDCLIB-2 PDCLIB-8: Implement mbrtowc using mbrtoc32/mbrtoc16 depending upon definitio...
Owen Shepherd [Tue, 1 Jan 2013 17:58:45 +0000 (17:58 +0000)]
PDCLIB-2 PDCLIB-8: Implement mbrtowc using mbrtoc32/mbrtoc16 depending upon definition of wchar_t

11 years agoPDCLIB-2 PDCLIB-9: Fix warning in c32rtomb
Owen Shepherd [Tue, 1 Jan 2013 17:57:28 +0000 (17:57 +0000)]
PDCLIB-2 PDCLIB-9: Fix warning in c32rtomb

11 years agoPDCLIB-2 PDCLIB-9: Single character conversions for <uchar.h>
Owen Shepherd [Mon, 31 Dec 2012 20:34:58 +0000 (20:34 +0000)]
PDCLIB-2 PDCLIB-9: Single character conversions for <uchar.h>

11 years agoPDCLIB-2 PDCLIB-9: MB_CUR_MAX macro and implementation
Owen Shepherd [Mon, 31 Dec 2012 20:34:22 +0000 (20:34 +0000)]
PDCLIB-2 PDCLIB-9: MB_CUR_MAX macro and implementation

11 years agoMove lconv definition for default locale inside of struct
Owen Shepherd [Mon, 31 Dec 2012 20:31:03 +0000 (20:31 +0000)]
Move lconv definition for default locale inside of struct

11 years agoPDCLIB-2 Add strlen() variant for char16_t/char32_t strings
Owen Shepherd [Mon, 31 Dec 2012 20:30:20 +0000 (20:30 +0000)]
PDCLIB-2 Add strlen() variant for char16_t/char32_t strings

11 years agoEnsure newline at end of file (suppress warning)
Owen Shepherd [Mon, 31 Dec 2012 20:29:31 +0000 (20:29 +0000)]
Ensure newline at end of file (suppress warning)

11 years agoPDCLIB-1 locale functions only included <_PDCLIB_locale.h>, not <locale.h>. This...
Owen Shepherd [Mon, 31 Dec 2012 20:28:46 +0000 (20:28 +0000)]
PDCLIB-1 locale functions only included <_PDCLIB_locale.h>, not <locale.h>. This prevented compilation in regression test mode

11 years agoPDCLIB-1 PDCLIB-2 PDCLIB-9 PDCLIB-12: Add thread specific locale support; migrate...
Owen Shepherd [Mon, 31 Dec 2012 19:20:06 +0000 (19:20 +0000)]
PDCLIB-1 PDCLIB-2 PDCLIB-9 PDCLIB-12: Add thread specific locale support; migrate existing codebase to utilise it

11 years agopthread c11 threading backend: add support for thread specific data
Owen Shepherd [Mon, 31 Dec 2012 19:17:07 +0000 (19:17 +0000)]
pthread c11 threading backend: add support for thread specific data

11 years agoAnnotate C32 functions as having no test driver
Owen Shepherd [Mon, 31 Dec 2012 16:25:22 +0000 (16:25 +0000)]
Annotate C32 functions as having no test driver

11 years agoPDCLIB-2 PDCLIB-9: Add char32/char16 conversions to header, incl. optional extras...
Owen Shepherd [Mon, 31 Dec 2012 16:16:01 +0000 (16:16 +0000)]
PDCLIB-2 PDCLIB-9: Add char32/char16 conversions to header, incl. optional extras providing string conversions (which will be used internally by the library to implement wide character conversions)

Implement (as yet untested) ucs-4 conversions

11 years agoPDCLIB-2 PDCLIB-9: As an extension, add the POSIX thread-local locale API
Owen Shepherd [Mon, 31 Dec 2012 16:00:46 +0000 (16:00 +0000)]
PDCLIB-2 PDCLIB-9: As an extension, add the POSIX thread-local locale API

11 years agoPDCLIB-2 PDCLIB-12 tighten up restrict qualifiers on codec interface
Owen Shepherd [Mon, 31 Dec 2012 15:57:42 +0000 (15:57 +0000)]
PDCLIB-2 PDCLIB-12 tighten up restrict qualifiers on codec interface

11 years agoMinimize the amount of internal definitions which get exposed via the user-visible...
Owen Shepherd [Mon, 31 Dec 2012 14:15:18 +0000 (14:15 +0000)]
Minimize the amount of internal definitions which get exposed via the user-visible headers

11 years agoPDCLIB-2 PDCLIB-12: If the internal character conversion routines are called
Owen Shepherd [Mon, 31 Dec 2012 01:38:06 +0000 (01:38 +0000)]
PDCLIB-2 PDCLIB-12: If the internal character conversion routines are called
with p_outbuf == NULL, then they will perform the conversion but *not* store
the result. This facilitates the implementation of mbrlen and similar
functions.

Added (optional) UTF-16 variants of the conversion routines. If provided them,
then PDCLib will use them whenever it needs a UTF-16 conversion (e.g. uchar.h
UTF-16 routines, or wchar_t on win32)

11 years agoPDCLIB-2 PDCLIB-12: UTF-8 codec
Owen Shepherd [Mon, 31 Dec 2012 00:29:22 +0000 (00:29 +0000)]
PDCLIB-2 PDCLIB-12: UTF-8 codec

11 years agoassert: for assert(x), mark !x case as _PDCLIB_UNREACHABLE
Owen Shepherd [Mon, 31 Dec 2012 00:29:06 +0000 (00:29 +0000)]
assert: for assert(x), mark !x case as _PDCLIB_UNREACHABLE

11 years agoAdd _PDCLIB_UNREACHABLE (defines block of code as unreachable) and _PDCLIB_UNDEFINED...
Owen Shepherd [Sun, 30 Dec 2012 22:55:11 +0000 (22:55 +0000)]
Add _PDCLIB_UNREACHABLE (defines block of code as unreachable) and _PDCLIB_UNDEFINED(var) (defines the contents of the passed variable to be undefined) macros to _PDCLIB_aux.h

11 years agoPDCLIB-2 PDCLIB-12: Move _PDCLIB_mbstate_t to _PDCLIB_encoding.h, the new home for...
Owen Shepherd [Sun, 30 Dec 2012 21:43:19 +0000 (21:43 +0000)]
PDCLIB-2 PDCLIB-12: Move _PDCLIB_mbstate_t to _PDCLIB_encoding.h, the new home for character-related functions. Update wchar.h to reference this. Define mbstate_t to be 128 bytes; a very conservative size

11 years agoPDCLIB-2 PDCLIB-12: Add Latin-1 codec
Owen Shepherd [Sun, 30 Dec 2012 20:37:30 +0000 (20:37 +0000)]
PDCLIB-2 PDCLIB-12: Add Latin-1 codec

11 years agoPDCLIB-2 PDCLIB-12: ASCII codec correct off-by-one error
Owen Shepherd [Sun, 30 Dec 2012 20:37:13 +0000 (20:37 +0000)]
PDCLIB-2 PDCLIB-12: ASCII codec correct off-by-one error

11 years agoPDCLIB-2 PDCLIB-12: Add new "basecodecs" option, which will provide ASCII/Latin-1...
Owen Shepherd [Sun, 30 Dec 2012 20:32:19 +0000 (20:32 +0000)]
PDCLIB-2 PDCLIB-12: Add new "basecodecs" option, which will provide ASCII/Latin-1/UTF-8 codecs. Add to the POSIX build.

11 years ago_PDCLIB_encoding.h: match internal types
Owen Shepherd [Sun, 30 Dec 2012 20:31:39 +0000 (20:31 +0000)]
_PDCLIB_encoding.h: match internal types

11 years agoMake _PDCLIB_mbstate_t available in the type namespace, not just the struct tag namespace
Owen Shepherd [Sun, 30 Dec 2012 20:31:02 +0000 (20:31 +0000)]
Make _PDCLIB_mbstate_t available in the type namespace, not just the struct tag namespace

11 years agouchar.h: correct preprocessor directives
Owen Shepherd [Sun, 30 Dec 2012 20:30:08 +0000 (20:30 +0000)]
uchar.h: correct preprocessor directives

11 years agoPDCLIB-2 PDCLIB-12: Add uchar.h with appropriate type definitions. Functions TBD.
Owen Shepherd [Sun, 30 Dec 2012 20:03:12 +0000 (20:03 +0000)]
PDCLIB-2 PDCLIB-12: Add uchar.h with appropriate type definitions. Functions TBD.

11 years agoElaborate on the interface of the encoding functions
Owen Shepherd [Sun, 30 Dec 2012 20:01:45 +0000 (20:01 +0000)]
Elaborate on the interface of the encoding functions

11 years agoPDCLIB-12: Groundwork for encoding support system
Owen Shepherd [Sun, 30 Dec 2012 19:28:27 +0000 (19:28 +0000)]
PDCLIB-12: Groundwork for encoding support system

11 years agoRename files which had not yet been renamed in the POSIX platform
Owen Shepherd [Sun, 30 Dec 2012 17:25:45 +0000 (17:25 +0000)]
Rename files which had not yet been renamed in the POSIX platform

11 years agoRename all files to match their primary symbol (avoids file conflicts in library...
Owen Shepherd [Sun, 30 Dec 2012 17:23:14 +0000 (17:23 +0000)]
Rename all files to match their primary symbol (avoids file conflicts in library archives)

11 years agoAdd alias manpages for all the unlocked stdio functions
Owen Shepherd [Sun, 30 Dec 2012 12:25:38 +0000 (12:25 +0000)]
Add alias manpages for all the unlocked stdio functions

11 years ago<stdio.h>: remove fileno_unlocked (illegal immigrant from POSIX! We don't and never...
Owen Shepherd [Sun, 30 Dec 2012 12:24:19 +0000 (12:24 +0000)]
<stdio.h>: remove fileno_unlocked (illegal immigrant from POSIX! We don't and never will implement it; it doesn't make sense for us)

11 years agoManual page on unlocked stdio routines
Owen Shepherd [Sun, 30 Dec 2012 01:36:31 +0000 (01:36 +0000)]
Manual page on unlocked stdio routines

11 years agoAdd man page aliases for ftrylockfile/funlockfile
Owen Shepherd [Sun, 30 Dec 2012 00:47:56 +0000 (00:47 +0000)]
Add man page aliases for ftrylockfile/funlockfile

11 years agoAdd pthreads threading backend and move the POSIX port over to using it
Owen Shepherd [Thu, 27 Dec 2012 21:49:28 +0000 (21:49 +0000)]
Add pthreads threading backend and move the POSIX port over to using it

11 years agothreads.h: correct definition of call_once when no fast path is defined
Owen Shepherd [Thu, 27 Dec 2012 21:40:28 +0000 (21:40 +0000)]
threads.h: correct definition of call_once when no fast path is defined

11 years agoqsort: Regression test now ignores 4th test on Mac OS X in addition to BSDs (test...
Owen Shepherd [Thu, 27 Dec 2012 21:38:54 +0000 (21:38 +0000)]
qsort: Regression test now ignores 4th test on Mac OS X in addition to BSDs (test causes hang)

11 years agorewind: Add _unlocked variation. Make rewind() actually take lock before touching...
Owen Shepherd [Thu, 27 Dec 2012 21:37:26 +0000 (21:37 +0000)]
rewind: Add _unlocked variation. Make rewind() actually take lock before touching file object

11 years agoAdd rules to .hgignore to ignore test files
Owen Shepherd [Thu, 27 Dec 2012 21:35:45 +0000 (21:35 +0000)]
Add rules to .hgignore to ignore test files

11 years agoFix warnings
Owen Shepherd [Thu, 27 Dec 2012 01:13:24 +0000 (01:13 +0000)]
Fix warnings

11 years agoAdd an up to date POSIX port (works on Mac OS X). This is fully functional except...
Owen Shepherd [Thu, 27 Dec 2012 00:46:40 +0000 (00:46 +0000)]
Add an up to date POSIX port (works on Mac OS X). This is fully functional except for strerror. Warning cleanup is to come.

11 years agoRemove object files that had smuggled their way into the POSIX platform directories
Owen Shepherd [Thu, 27 Dec 2012 00:42:37 +0000 (00:42 +0000)]
Remove object files that had smuggled their way into the POSIX platform directories

11 years ago_PDCLIB_float.h: add newline at end of file
Owen Shepherd [Thu, 27 Dec 2012 00:33:42 +0000 (00:33 +0000)]
_PDCLIB_float.h: add newline at end of file
_PDCLIB_int.h: provide way to override choice of int64_t

11 years agoopt/nothread: add support for recursion
Owen Shepherd [Thu, 27 Dec 2012 00:29:19 +0000 (00:29 +0000)]
opt/nothread: add support for recursion

11 years agoMove existing errno handling to tss_errno, to allow the POSIX platform to just use...
Owen Shepherd [Thu, 27 Dec 2012 00:27:28 +0000 (00:27 +0000)]
Move existing errno handling to tss_errno, to allow the POSIX platform to just use the underlying OS's errno implementation. Eventually, tss_errno will use the thread specific primitives.

11 years agoAdd hello world file which can be used to establish that the I/O routines are working
Owen Shepherd [Thu, 27 Dec 2012 00:19:49 +0000 (00:19 +0000)]
Add hello world file which can be used to establish that the I/O routines are working

11 years agoJamfile, Jamrules: Convert to UNIX line endings
Owen Shepherd [Thu, 27 Dec 2012 00:19:04 +0000 (00:19 +0000)]
Jamfile, Jamrules: Convert to UNIX line endings

11 years agowcsncat test suite had a parameter which was a narrow string. whoops!
Owen Shepherd [Thu, 27 Dec 2012 00:11:19 +0000 (00:11 +0000)]
wcsncat test suite had a parameter which was a narrow string. whoops!

11 years agoFIXES PDCLIB-20 by preserving _PDCLIB_STATUS flag
Owen Shepherd [Thu, 27 Dec 2012 00:05:11 +0000 (00:05 +0000)]
FIXES PDCLIB-20 by preserving _PDCLIB_STATUS flag

11 years agoPDCLIB_scan: For %p, use E_long. This is a temporary change: Long term, we will be...
Owen Shepherd [Wed, 26 Dec 2012 23:28:07 +0000 (23:28 +0000)]
PDCLIB_scan: For %p, use E_long. This is a temporary change: Long term, we will be adding an E_pointer conversion

11 years ago_PDCLIB_print: Change "written" unsigned -> int due to C promotion rules causing...
Owen Shepherd [Wed, 26 Dec 2012 22:19:57 +0000 (22:19 +0000)]
_PDCLIB_print: Change "written" unsigned -> int due to C promotion rules causing incorrect behaviour on 64-bit platforms

11 years ago_PDCLIB_scan: Correct INT_MAX -> UINT_MAX when initializing width
Owen Shepherd [Wed, 26 Dec 2012 19:45:24 +0000 (19:45 +0000)]
_PDCLIB_scan: Correct INT_MAX -> UINT_MAX when initializing width
vfprintf: Correct SIZE_MAX -> UINT_MAX when initializing width

11 years agoposix: First pass at updated config file for POSIX platforms
Owen Shepherd [Wed, 26 Dec 2012 18:54:57 +0000 (18:54 +0000)]
posix: First pass at updated config file for POSIX platforms

11 years agowin32: _PDCLIB_config.h cleaned up:
Owen Shepherd [Wed, 26 Dec 2012 18:53:47 +0000 (18:53 +0000)]
win32: _PDCLIB_config.h cleaned up:
 * _PDCLIB_NOHANDLE removed (obsolete)
 * _PDCLIB_NORETURN removed (obsolete)
 * Temp name length was greated than max guaranteed file name length. This has obvious issus.

11 years ago_PDCLIB_aux.h: Better detection of Clang and GCC features
Owen Shepherd [Wed, 26 Dec 2012 18:51:35 +0000 (18:51 +0000)]
_PDCLIB_aux.h: Better detection of Clang and GCC features

11 years ago_PDCLIB_seek: Incorrect specification (used int64_t where int_fast64_t was correct)
Owen Shepherd [Wed, 26 Dec 2012 18:50:48 +0000 (18:50 +0000)]
_PDCLIB_seek: Incorrect specification (used int64_t where int_fast64_t was correct)

11 years ago_PDCLIB_scan: Had incorrect upper bound on field width causing integer overflow
Owen Shepherd [Wed, 26 Dec 2012 18:50:04 +0000 (18:50 +0000)]
_PDCLIB_scan: Had incorrect upper bound on field width causing integer overflow

11 years agoAdd Sublime Text project file
Owen Shepherd [Fri, 14 Dec 2012 15:36:25 +0000 (15:36 +0000)]
Add Sublime Text project file

11 years agoPDCLIB-18: Unify fgetc under _PDCLIB_getchars. Also unify gets under _PDCLIB_getchars...
Owen Shepherd [Tue, 11 Dec 2012 02:00:22 +0000 (02:00 +0000)]
PDCLIB-18: Unify fgetc under _PDCLIB_getchars. Also unify gets under _PDCLIB_getchars (gets also suffered from the bug)

11 years agoPDCLIB-18: Add _PDCLIB_getchars to _PDCLIB_io.h. Change fread & fgets to go through...
Owen Shepherd [Tue, 11 Dec 2012 01:42:35 +0000 (01:42 +0000)]
PDCLIB-18: Add _PDCLIB_getchars to _PDCLIB_io.h. Change fread & fgets to go through this function.

All narrow character reads are going to be directed through this function

11 years agoPDCLIB-19: Remove gets() when >=C11. Deprecated it universally.
Owen Shepherd [Tue, 11 Dec 2012 01:15:02 +0000 (01:15 +0000)]
PDCLIB-19: Remove gets() when >=C11. Deprecated it universally.

11 years agoPDCLIB-18: Implement defect test cases
Owen Shepherd [Tue, 11 Dec 2012 00:55:36 +0000 (00:55 +0000)]
PDCLIB-18: Implement defect test cases

11 years agoPDCLIB-8: First phase of intergation of new I/O backend system (with minimal
Owen Shepherd [Wed, 5 Dec 2012 02:20:16 +0000 (02:20 +0000)]
PDCLIB-8: First phase of intergation of new I/O backend system (with minimal
disruption of existing code)
* _PDCLIB_fdopen: renamed _PDCLIB_fvopen to more clearly deliniate from POSIX
  fdopen function and state purpose
* _PDCLIB_fd_t is now a library provided union type
   Contains members of type void*, uintptr_t, intptr_t. If another type is
   required, define _PDCLIB_OSFD_T to that type in _PDCLIB_config.h
* _PDCLIB_fileops_t added. This structure contains the file operations
* _PDCLIB_fillbuffer, _PDCLIB_flushbuffer, _PDCLIB_seek become internal APIs
    (_PDCLIB_seek's days are numbered!)
* _PDCLIB_close is removed
* tmpfile() and fopen() should now call through to _PDCLIB_fvopen and provide
  a pointer to an appropriate _PDCLIB_fileops_t structure

Win32 port updated. Other ports are TODO

11 years agoOn C++, define _PDCLIB_wchar_t to be builtin type wchar_t
Owen Shepherd [Tue, 4 Dec 2012 19:07:13 +0000 (19:07 +0000)]
On C++, define _PDCLIB_wchar_t to be builtin type wchar_t

11 years agowin32: Fix warnings relating to definition of LONG and use of InterlockedCompareExchange
Owen Shepherd [Thu, 15 Nov 2012 20:33:02 +0000 (20:33 +0000)]
win32: Fix warnings relating to definition of LONG and use of InterlockedCompareExchange

11 years agoPDCLIB-15: _PDCLIB_print now calls through to putc_unlocked
Owen Shepherd [Thu, 15 Nov 2012 20:03:28 +0000 (20:03 +0000)]
PDCLIB-15: _PDCLIB_print now calls through to putc_unlocked

11 years agoPDCLIB-16: Add _unlocked variations of all I/O routines; move work into these versions
Owen Shepherd [Mon, 12 Nov 2012 04:09:02 +0000 (04:09 +0000)]
PDCLIB-16: Add _unlocked variations of all I/O routines; move work into these versions
PDCLIB-15: Make most stdio routines lock the stream and then call through to the _unlocked version

11 years agoPDCLIB-15: fopen initializes stream lock; fclose releases
Owen Shepherd [Thu, 8 Nov 2012 23:21:37 +0000 (23:21 +0000)]
PDCLIB-15: fopen initializes stream lock; fclose releases

11 years agoPDCLIB-15 PDCLIB-16:
Owen Shepherd [Thu, 8 Nov 2012 23:17:29 +0000 (23:17 +0000)]
PDCLIB-15 PDCLIB-16:
 * Move _PDCLIB_file_t to _PDCLIB_io.h, compertmentalizing dependencies.
   Removes I/O specific structures from _PDCLIB_int.h. Allows _PDCLIB_io.h
   to depend upon _PDCLIB_threadconfig.h without recursive dependencies
   happening.
 * Add "lock" member to _PDCLIB_file_t as the stream locking mutex
 * Add flockfile/ftrylockfile/funlockfile as functions which manipulate the
   locking mutex explicitly
 * Add man page on flockfile/funlockfile/ftrylockfile
 * Add flockfile/ftrylockfile/funlockfile and *_unlocked to <stdio.h> and
   <wchar.h> as appropriate
 * win32: Initialize mutex member correctly

11 years agoImprove reStructuredText formatting
Owen Shepherd [Thu, 8 Nov 2012 20:09:03 +0000 (20:09 +0000)]
Improve reStructuredText formatting

11 years agoConvert readme to be in reStructuredText format (for nice formatting)
Owen Shepherd [Thu, 8 Nov 2012 20:00:06 +0000 (20:00 +0000)]
Convert readme to be in reStructuredText format (for nice formatting)

11 years agoPDCLIB-14: abort() on buffer size error
Owen Shepherd [Thu, 8 Nov 2012 19:58:40 +0000 (19:58 +0000)]
PDCLIB-14: abort() on buffer size error

12 years agoPDCLIB-13: fwrite did not reset it's offset after doing a buffer flush.
Owen Shepherd [Wed, 10 Oct 2012 15:01:48 +0000 (16:01 +0100)]
PDCLIB-13: fwrite did not reset it's offset after doing a buffer flush.
           TODO: Evaluate if fwrite should move to using an offset stored inside the FILE structure

   Patch submitted by Rink Springer (complexity: trivial)

12 years agoUpdate .hgignore to ignore sublime text workspaces
Owen Shepherd [Wed, 10 Oct 2012 15:00:08 +0000 (16:00 +0100)]
Update .hgignore to ignore sublime text workspaces

12 years agoPDCLIB-2: Pure wide character functions
Owen Shepherd [Tue, 11 Sep 2012 21:48:43 +0000 (22:48 +0100)]
PDCLIB-2: Pure wide character functions
 * functions/wchar/: functions which only involve wide characters & no locale dependent characters
 * opt/mincoll: new option providing bare minimum collation support (pure wchar_t binary comparison)
 * platform/win32: Use mincoll
 * testing/_PDCLIB_test.h: Provide wide character strings for testing the wide character functions

12 years agoPDCLIB-2: <wchar.h>: don't expect or expose definition of FILE. Declare mbstate_t...
Owen Shepherd [Tue, 11 Sep 2012 21:46:07 +0000 (22:46 +0100)]
PDCLIB-2: <wchar.h>: don't expect or expose definition of FILE. Declare mbstate_t, wint_t, wchar_t

12 years agoman3/wchar.h.3: _PDCLIB_restrict -> restrict. doh.
Owen Shepherd [Wed, 29 Aug 2012 23:40:24 +0000 (00:40 +0100)]
man3/wchar.h.3: _PDCLIB_restrict -> restrict. doh.

12 years agoman3/pdclib.3: link wchar.h from our list of headers
Owen Shepherd [Wed, 29 Aug 2012 23:37:37 +0000 (00:37 +0100)]
man3/pdclib.3: link wchar.h from our list of headers

12 years agoPDCLIB-2: Complete wchar.h + manual page. This header is a monster, implies numerous...
Owen Shepherd [Wed, 29 Aug 2012 23:29:27 +0000 (00:29 +0100)]
PDCLIB-2: Complete wchar.h + manual page. This header is a monster, implies numerous backend changes, and therefore is going to be a bit of a slog :-(

12 years agoPDCLIB-7: Add _PDCLIB_ftell64 to give us full precision file positioning information...
Owen Shepherd [Sun, 26 Aug 2012 15:33:48 +0000 (16:33 +0100)]
PDCLIB-7: Add _PDCLIB_ftell64 to give us full precision file positioning information. Rewrite ftell to use it, and fseek to use it for the SEEK_CUR case. This should resolve PDCLIB-7

12 years agoPDCLIB-7: When fseek is called with SEEK_CUR, internally calculate the new offset...
Owen Shepherd [Sun, 26 Aug 2012 15:04:22 +0000 (16:04 +0100)]
PDCLIB-7: When fseek is called with SEEK_CUR, internally calculate the new offset and then hand SEEK_SET to the glue layer, as our offset may differ from the offset of the underlying file descriptor due to buffering