- 14 5月, 2012 4 次提交
-
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
these are cruft from the original code which used an explicit string length rather than null termination. i blindly converted all the checks to null terminator checks, without noticing that in several cases, the subsequent switch statement would automatically handle the null byte correctly.
-
由 Rich Felker 提交于
i don't understand why this has to be conditional on being in BRE mode, but enabling this code unconditionally breaks a huge number of ERE test cases.
-
- 13 5月, 2012 8 次提交
-
-
由 Rich Felker 提交于
i've been trying out openmp and it seems like it won't be much use without this...
-
由 Rich Felker 提交于
we do not bother making h_errno thread-local since the only interfaces that use it are inherently non-thread-safe. but still use the potentially-thread-local ABI to access it just to avoid lock-in.
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
-
由 nsz 提交于
-
由 nsz 提交于
-
- 11 5月, 2012 7 次提交
-
-
由 Rich Felker 提交于
written to avoid multiple conditional jumps and avoid ugly repetitive lines in the header file.
-
由 Rich Felker 提交于
this one is for program(s|ers) who haven't heard of uint16_t and uint32_t (which are obviously the correct types for use in such situations, as they're the argument/return types for ntohs/htons and ntohl/htonl).
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
there's no sense in using a powerful lock in exit, because it will never be unlocked. a thread that arrives at exit while exit is already in progress just needs to hang forever. use the pause syscall for this because it's cheap and easy and universally available.
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
-
- 10 5月, 2012 2 次提交
-
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
this is all junk, but some programs use it.
-
- 09 5月, 2012 1 次提交
-
-
由 Rich Felker 提交于
the non-prototype declaration of basename in string.h is an ugly compromise to avoid breaking 2 types of broken software: 1. programs which assume basename is declared in string.h and thus would suffer from dangerous pointer-truncation if an implicit declaration were used. 2. programs which include string.h with _GNU_SOURCE defined but then declare their own prototype for basename using the incorrect GNU signature for the function (which would clash with a correct prototype). however, since C++ does not have non-prototype declarations and interprets them as prototypes for a function with no arguments, we must omit it when compiling C++ code. thankfully, all known broken apps that suffer from the above issues are written in C, not C++.
-
- 08 5月, 2012 6 次提交
-
-
由 nsz 提交于
backported fix from freebsd: http://svnweb.FreeBSD.org/base?view=revision&revision=233973
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
1. * in BRE is not special at the beginning of the regex or a subexpression. this broke ncurses' build scripts. 2. \\( in BRE is a literal \ followed by a literal (, not a literal \ followed by a subexpression opener. 3. the ^ in \\(^ in BRE is a literal ^ only at the beginning of the entire BRE. POSIX allows treating it as an anchor at the beginning of a subexpression, but TRE's code for checking if it was at the beginning of a subexpression was wrong, and fixing it for the sake of supporting a non-portable usage was too much trouble when just removing this non-portable behavior was much easier. this patch also moved lots of the ugly logic for empty atom checking out of the default/literal case and into new cases for the relevant characters. this should make parsing faster and make the code smaller. if nothing else it's a lot more readable/logical. at some point i'd like to revisit and overhaul lots of this code...
-
- 07 5月, 2012 5 次提交
-
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
-
由 nsz 提交于
updated nextafter* to use FORCE_EVAL, it can be used in many other places in the math code to improve readability.
-
由 Rich Felker 提交于
apparently initializing a variable is not "using" it but assigning to it is "using" it. i don't really like this fix, but it's better than trying to make a bigger cleanup just before a release, and it should work fine (tested against nsz's math tests).
-
由 Rich Felker 提交于
this only works with gcc 4.6 and later, but it allows us to support non-default endianness on archs like arm, mips, ppc, etc. that can do both without having separate header sets for both variants, and it saves one #include even on fixed-endianness archs like x86.
-
- 06 5月, 2012 5 次提交
-
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
apparently some packages see stropts.h and want to be able to use this. the implementation checks that the file descriptor is valid by using fcntl/F_GETFD so it can report an error if not (as specified).
-
由 nsz 提交于
make nexttoward, nexttowardf independent of long double representation. fix nextafterl: it did not raise underflow flag when the result was 0.
-
由 Rich Felker 提交于
two issues: (1) the type was wrong (unsigned instead of signed int), and (2) the value of FP_ILOGBNAN should be INT_MIN rather than INT_MAX to match the ABI. this is also much more useful since INT_MAX corresponds to a valid input (infinity). the standard would allow us to set FP_ILOGB0 to -INT_MAX instead of INT_MIN, which would give us distinct values for ilogb(0) and ilogb(NAN), but the benefit seems way too small to justify ignoring the ABI. note that the macro is just a "portable" (to any twos complement system where signed and unsigned int have the same width) way to write INT_MIN without needing limits.h. it's valid to use this method since these macros are not required to work in #if directives.
-
由 Rich Felker 提交于
-
- 05 5月, 2012 2 次提交
-
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
-