| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
These convert plain ASCII characters in-line, making them only slightly
slower than the single-byte ("NONE" encoding) version when processing
ASCII strings.
|
| |
|
|
|
|
| |
Noticed by: Todd Miller <Todd.Miller@courtesan.com>
|
|
|
|
| |
nwc dropping to zero.
|
|
|
|
| |
Obtained from: KAME
|
|
|
|
| |
instead of making repeated calls to __fgetwc().
|
|
|
|
|
|
|
| |
convenient when the source string isn't null-terminated.
Implement the other conversion functions (mbstowcs(), mbsrtowcs(), wcstombs(),
wcsrtombs()) in terms of these new functions.
|
|
|
|
| |
string instead of multiple calls to __fputwc().
|
|
|
|
|
|
|
|
| |
file as an argument, it may still fail for the same reasons that
open(2) can.
Pointed out by: Jilles Tjoelker
Apporived by: bmilekic (mentor)
|
|
|
|
|
|
|
|
| |
for statfs(2). This is false, if the pathname specified
is a regular file, then the information for the file
system that the file lives on will be returned.
Approved by: bmilekic (mentor)
|
|
|
|
| |
through mbrtowc() and wcrtomb().
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gcc is using. This fixes devstat consumers (like vmstat, iostat,
systat) so they don't print crazy zillion digit numbers for
disk transfers and bandwidth.
According to gcc, long doubles are 64-bits, rather than 128 bits
like the SVR4 ABI spec wants them to be.. Note that MacOSX also treats
long doubles as 64-bits, and not 128 bits, so we are in good company.
Reviewed by: das
Approved by: grehan
|
| |
|
|
|
|
| |
not the link register, which was lucky enough to work.
|
| |
|
|
|
|
| |
with "sh mkh" so it works if the script is not executable.
|
|
|
|
| |
of OANYOF sets for the moment.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
- It was added to libc instead of libm. Hopefully no programs rely
on this mistake.
- It didn't work properly on large long doubles because its argument
was converted to type double, resulting in undefined behavior.
|
|
|
|
| |
for subnormals with one implementation that works.
|
|
|
|
|
|
|
| |
of features required by the standard that the current implementation
does not support.
PR: 57911 (related)
|
|
|
|
|
|
|
| |
of features required by the standard that the current implementation
does not support.
PR: 57911
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
of fgetln.c (non-static).
|
|
|
|
|
|
|
|
|
| |
The getfsstat(2) function expects a buffer and a count, and returns a count.
The confusing part is that the count it takes is a byte count, while the
return value is a count of the number of structures it has filled out.
Spell this out.
|
|
|
|
| |
support now.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
idea is that we perform multibyte->wide character conversion while parsing
and compiling, then convert byte sequences to wide characters when they're
needed for comparison and stepping through the string during execution.
As with tr(1), the main complication is to efficiently represent sets of
characters in bracket expressions. The old bitmap representation is replaced
by a bitmap for the first 256 characters combined with a vector of individual
wide characters, a vector of character ranges (for [A-Z] etc.), and a vector
of character classes (for [[:alpha:]] etc.).
One other point of interest is that although the Boyer-Moore algorithm had
to be disabled in the general multibyte case, it is still enabled for UTF-8
because of its self-synchronizing nature. This greatly speeds up matching
by reducing the number of multibyte conversions that need to be done.
|
|
|
|
| |
contains an illegal multibyte character sequence.
|
|
|
|
|
| |
it hasn't even been implemented yet. I just wanted to be the first
to try a new approach to development ;-)
|
|
|
|
| |
unused character category calculations.
|
|
|
|
|
|
| |
consequently the exponent is only 11 bits. Testing whether the
exponent equals 32767 in that case only effects to compiler warnings
and thus build breakage.
|
| |
|
| |
|
|
|
|
| |
Prodded by: ru
|
|
|
|
|
|
|
| |
*are* in libc for historical reasons, but programmers should not rely
on that fact.
Also remove a BUGS section that is not relevant here.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
isnormal() the hard way, rather than relying on fpclassify(). This is
a lose in the sense that we need a total of 12 functions, but it is
necessary for binary compatibility because we have never bumped libm's
major version number. In particular, isinf(), isnan(), and isnanf()
were BSD libc functions before they were C99 macros, so we can't
reimplement them in terms of fpclassify() without adding a dependency
on libc.so.5. I have tried to arrange things so that programs that
could be compiled in FreeBSD 4.X will generate the same external
references when compiled in 5.X. At the same time, the new macros
should remain C99-compliant.
The isinf() and isnan() functions remain in libc for historical
reasons; however, I have moved the functions that implement the macros
isfinite() and isnormal() to libm where they belong. Moreover,
half a dozen MD versions of isinf() and isnan() have been replaced
with MI versions that work equally well.
Prodded by: kris
|
|
|
|
|
| |
Slight emendation to _PC_CHOWN_RESTRICTED, which is in a very similar
boat.
|
|
|
|
|
|
| |
class. This is necessary in order to implement tr(1) efficiently in
multibyte locales, since the brute force method of finding all characters
in a class is infeasible with a 32-bit (or wider) wchar_t.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
under the RETURN VALUES section so it is consistent with others.
Cleanup the return value text for getenv(3) a little while I am here.
PR: docs/58033
MFC after: 3 days
|
|
|
|
|
|
|
| |
An optional argument cannot start with '-', even if permutation is
disabled.
Obtained from: OpenBSD getopt_long.c v1.17
|
| |
|