summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* cygwin: document %l[ and bump API minorCorinna Vinschen2017-12-013-1/+8
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* newlib: vfscanf: Implement %l[Corinna Vinschen2017-12-011-2/+88
| | | | | | Just as %lc and %ls, this is only enabled on ELIX_LEVEL >= 2. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* newlib: vf[w]scanf: Fix conversion multibyte <-> wchar_tCorinna Vinschen2017-12-012-25/+53
| | | | | | | | | | | | | * vfscanf: per POSIX, if the target type is wchar_t, the width is counted in (multibyte) characters, not in bytes. * vfscanf: Handle UTF-8 multibyte sequences converted to surrogate pairs on UTF-16 systems. * vfwscanf: Don't count high surrogates in input against field width counting. Per POSIX, input is Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* newlib: vf[w]scanf: Drop width computation mixupCorinna Vinschen2017-12-012-70/+44
| | | | | | | | | | | | | | | | | | | The width value keeps the maximum field width. This is the maximum field width of the *input*. It's *never* to be used in conjunction with the number of bytes or characters written to the output argument. However, especially in vfwscanf, the code is partially taken from NetBSD which erroneously subtracts the number of multibyte chars written to the argument from the width variable, thus potentially subtracting up to MB_CUR_MAX from width for a single character in the input stream. To make matters worse, the previous patch adding %m added basically the same mistake for 'c' type input. Fix it. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* HOWTO: remove reference to TRAD_SYNOPSISYaakov Selkowitz2017-12-011-7/+1
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* mathfp: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-0128-344/+28
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* math: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-0128-310/+28
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* libm/machine: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-013-12/+3
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* complex: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-0123-23/+23
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* libm/common: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-0130-133/+30
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* unix: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-012-32/+2
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* time: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-0112-83/+12
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* sys: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-014-34/+4
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* string: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-0185-546/+85
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* stdlib: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-0150-607/+51
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* stdio64: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-017-81/+7
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* stdio: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-0175-1022/+75
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* signal: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-013-29/+3
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* search: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-013-28/+3
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* reent: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-0122-200/+25
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* posix: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-012-2/+2
|
* misc: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-013-12/+3
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* powerpc: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-018-231/+8
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* nds32: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-011-5/+1
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* microblaze: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-014-25/+4
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* locale: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-015-21/+5
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* iconv: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-011-39/+1
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* ctype: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-0133-189/+33
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* ssp: add Object Size Checking for unistd.h, part 2Yaakov Selkowitz2017-12-012-3/+44
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* cygwin: Document latest changes, bump API minorCorinna Vinschen2017-11-303-1/+26
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* newlib: vf[w]scanf: Implement POSIX %m modifierCorinna Vinschen2017-11-302-24/+448
| | | | | | | | | | | | | | * The new code is guarded with _WANT_IO_POSIX_EXTENSIONS, but this is automatically enabled with _WANT_IO_C99_FORMATS for now. * vfscanf neglects to implement %l[, so %ml[ is not implemented yet either. * Sidenote: vfwscanf doesn't allow ranges in %[ yet. Strictly this is allowed per POSIX, but it differes from vfscanf as well as from glibc. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* cygwin: [w]mempcpy: fix global symbolCorinna Vinschen2017-11-301-5/+5
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* cygwin: x86_64: implement mempcpy/wmempcpy in assemblerCorinna Vinschen2017-11-301-16/+44
| | | | | | | | | * change memcpy to internal _memcpy not setting the return value in %rax * implement all memcpy-like functions as caller to _memcpy, setting %rax to correct return value beforehand. This is possible because _memcpy does not use %rax at all Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* newlib: vfwscanf: fix miscomputation of max field width in %[] caseCorinna Vinschen2017-11-301-1/+1
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Feature test macros overhaul: unistd.h, part 3Yaakov Selkowitz2017-11-301-1/+21
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* ssp: add Object Size Checking for stdlib.hYaakov Selkowitz2017-11-303-0/+38
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* newlib: vf[w]scanf: add validity checksCorinna Vinschen2017-11-302-0/+37
| | | | | | | | | | | | | | | | POSIX requires that directive characters appear in a certain sequence: 1. '%' or '%<n>$' 2. optional '*' 3. optional field width digits 4. optional 'm' (not yet implemented) 5. optional length modifier ('l', 'L', 'll', 'h', 'hh', 'j', 't', 'z') 6. conversion specifier ('d', 's', etc) Add a few basic validity checks to that effect, otherwise reject directive as match failure. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* newlib: vf[w]scanf: Use SIZE_MAX rather than ~0Corinna Vinschen2017-11-302-4/+4
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* newlib: vfscanf: fix formattingCorinna Vinschen2017-11-301-2/+2
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* newlib: vf[w]scanf: Only return from a single point to simplify cleanupCorinna Vinschen2017-11-302-4/+2
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* cygwin: export wmempcpyYaakov Selkowitz2017-11-303-1/+4
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* string: add wmempcpyYaakov Selkowitz2017-11-305-38/+85
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* cygwin: add Object Size Checking to sys/socket.hYaakov Selkowitz2017-11-302-0/+24
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* cygwin: add Object Size Checking to sys/poll.hYaakov Selkowitz2017-11-302-0/+30
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* RTEMS: Add semaphore <sys/lock.h> functionsSebastian Huber2017-11-301-0/+4
| | | | | | Declare semaphore try wait and post binary functions. Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
* RTEMS: Timed wait by ticks <sys/lock.h> functionsSebastian Huber2017-11-301-0/+16
| | | | | | Declare timed wait by ticks functions. Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
* RTEMS: Add set/get name <sys/lock.h> functionsSebastian Huber2017-11-301-1/+71
| | | | | | Add inline functions to set/get the name. Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
* cygwin: create libssp compatibility import libraryYaakov Selkowitz2017-11-291-1/+4
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* cygwin: export SSP functionsYaakov Selkowitz2017-11-292-1/+25
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* ssp: add build infrastructureYaakov Selkowitz2017-11-298-9/+798
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>