about summary refs log tree commit diff
Commit message (Collapse)AuthorAgeFilesLines
* various header cleanups, some related to _BSD_SOURCE additionRich Felker2012-05-223-17/+9
| | | | | | there is no reason to avoid multiple identical macro definitions; this is perfectly legal C, and even with the maximal warning options enabled, gcc does not issue any warning for it.
* bsd_signal is a legacy (removed) XSI function, not needed in _BSD_SOURCERich Felker2012-05-221-4/+1
| | | | | its only purpose was for use on non-BSD systems that implement sysv semantics for signal() by default.
* support _BSD_SOURCE feature test macroRich Felker2012-05-2222-41/+126
| | | | | patch by Isaac Dunham. matched closely (maybe not exact) to glibc's idea of what _BSD_SOURCE should make visible.
* fix typo in utimes function that made it mess up file timesRich Felker2012-05-211-1/+1
|
* fix out-of-bounds array access in pthread barriers on 64-bitRich Felker2012-05-211-1/+1
| | | | | it's ok to overlap with integer slot 3 on 32-bit because only slots 0-2 are used on process-local barriers.
* move getpass decl to the right placeRich Felker2012-05-202-1/+1
|
* fix misplaced semicolon in preprocessor directive (#undef h_errno)Rich Felker2012-05-161-1/+1
|
* yet another try to get the check for gcc right...Rich Felker2012-05-141-1/+1
|
* fix error in last configure change (lack of escaping)Rich Felker2012-05-141-1/+1
|
* useless lastlog path just to make some stuff happyRich Felker2012-05-141-0/+1
|
* missing limit LOGIN_NAME_MAXRich Felker2012-05-141-0/+1
|
* correct the check for gcc (previous version failed for cross compilers)Rich Felker2012-05-131-1/+1
|
* remove some no-op end of string tests from regex parserRich Felker2012-05-131-4/+0
| | | | | | | | 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.
* another BRE fix: in ^*, * is literalRich Felker2012-05-131-0/+2
| | | | | | 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.
* let sysconf accurately report # of cpus availableRich Felker2012-05-131-2/+10
| | | | | i've been trying out openmp and it seems like it won't be much use without this...
* use __h_errno_location for h_errnoRich Felker2012-05-123-1/+14
| | | | | | 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.
* susv4 removed gethostbyname, etc. legacy cruft.Rich Felker2012-05-121-9/+7
|
* namespace cleanup - NI_* is NOT reserved by netdb.hRich Felker2012-05-121-3/+2
|
* some gnu junk in netdb.hRich Felker2012-05-121-0/+8
|
* fix missing va_list for vsyslogRich Felker2012-05-121-2/+2
|
* search: add comments to tsearch_avl.cnsz2012-05-131-0/+6
|
* search: add tdestroy (gnu extension)nsz2012-05-132-0/+23
|
* add missing IN6_ARE_ADDR_EQUALRich Felker2012-05-111-0/+5
| | | | | written to avoid multiple conditional jumps and avoid ugly repetitive lines in the header file.
* add one more bogus legacy headerRich Felker2012-05-101-0/+9
| | | | | | | 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).
* move vsyslog out of SYSLOG_NAMES conditionalRich Felker2012-05-101-2/+4
|
* Merge remote-tracking branch 'nsz/master'Rich Felker2012-05-103-5/+8
|\
| * math: fix remquo.c when x==-y and a subnormal remainder bug as wellnsz2012-05-083-5/+8
| | | | | | | | | | backported fix from freebsd: http://svnweb.FreeBSD.org/base?view=revision&revision=233973
* | remove __lock dependency from exitRich Felker2012-05-101-2/+4
| | | | | | | | | | | | | | 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.
* | fix missing static (namespace clash)Rich Felker2012-05-101-1/+1
| |
* | fix missing parens in bit op macros (param.h)Rich Felker2012-05-101-1/+1
| |
* | and another bug in setbit, etc. macros..Rich Felker2012-05-101-1/+1
| |
* | fix typo in sys/param.h that broke setbit, etc. macrosRich Felker2012-05-101-1/+1
| | | | | | | | this is all junk, but some programs use it.
* | omit declaration of basename wrongly interpreted as prototype in C++Rich Felker2012-05-091-0/+2
|/ | | | | | | | | | | | | | | | | | | 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++.
* some assemblers don't like fistpq; use the alt. mnemonic fistpllRich Felker2012-05-073-3/+3
|
* fix error checking for \ at end of regex (this was broken previously)Rich Felker2012-05-071-1/+1
|
* fix copy and paste error in regex code causing mishandling of \) in BRERich Felker2012-05-071-1/+1
|
* fix regex breakage in last commit (failure to handle empty regex, etc.)Rich Felker2012-05-071-4/+1
|
* fix ugly bugs in TRE regex parserRich Felker2012-05-071-60/+31
| | | | | | | | | | | | | | | | | | | | | | 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...
* update release info for 0.9.0 v0.9.0Rich Felker2012-05-062-5/+8
|
* some extra legacy header stuffRich Felker2012-05-063-0/+32
|
* add FORCE_EVAL macro to evaluate float expr for their side effectnsz2012-05-066-24/+25
| | | | | updated nextafter* to use FORCE_EVAL, it can be used in many other places in the math code to improve readability.
* fix unused variable warnings in new nextafter/nexttoward codeRich Felker2012-05-065-6/+12
| | | | | | | 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).
* take byte order from gcc if gcc has defined itRich Felker2012-05-061-0/+4
| | | | | | | 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.
* Merge remote-tracking branch 'nsz/master'Rich Felker2012-05-065-291/+176
|\
| * math: nextafter and nexttoward cleanupnsz2012-05-065-291/+176
| | | | | | | | | | make nexttoward, nexttowardf independent of long double representation. fix nextafterl: it did not raise underflow flag when the result was 0.
* | add isastream (obsolete STREAMS junk)Rich Felker2012-05-062-1/+9
|/ | | | | | 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).
* fix definitions of FP_ILOGB constantsRich Felker2012-05-051-2/+2
| | | | | | | | | | | | | | | 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.
* add -frounding-math to buildRich Felker2012-05-051-0/+1
|
* update readme and release notes for 0.9.0 release (not yet final)Rich Felker2012-05-052-16/+56
|
* relicense musl under MIT licenseRich Felker2012-05-052-515/+33
|