aboutsummaryrefslogtreecommitdiff
path: root/src/string/strcmp.c (unfollow)
Commit message (Expand)AuthorFilesLines
2014-03-11fix socket.h struct msghdr member types on powerpc•••these were incorrectly copied from the kernel, whose ABI matches the POSIX requirements but with the wrong underlying types and wrong signedness. Rich Felker1-4/+4
2014-03-11fix sysvipc structures on powerpc•••these have been wrong for a long time and were never detected or corrected. powerpc needs some gratuitous extra padding/reserved slots in ipc_perm, big-endian ordering for the padding of time_t slots that was intended by the kernel folks to allow a transition to 64-bit time_t, and some minor gratuitous reordering of struct members. Rich Felker4-20/+16
2014-03-11move struct semid_ds to from shared sys/sem.h to bits•••the definition was found to be incorrect at least for powerpc, and fixing this cleanly requires making the definition arch-specific. this will allow cleaning up the definition for other archs to make it more specific, and reversing some of the ugliness (time_t hacks) introduced with the x32 port. this first commit simply copies the existing definition to each arch without any changes. this is intentional, to make it easier to review changes made on a per-arch basis. Rich Felker9-16/+129
2014-03-09math.h: make __FLOAT_BITS and __DOUBLE_BITS C89•••Remove non-constant aggregate initializer. (Still using long long, but that is supported by ancient compilers without __extension__ anyway). Szabolcs Nagy1-2/+4
2014-03-09fix incorrect rounding in printf floating point corner cases•••the printf floating point formatting code contains an optimization to avoid computing digits that will be thrown away by rounding at the specified (or default) precision. while it was correctly retaining all places up to the last decimal place to be printed, it was not retaining enough precision to see the next nonzero decimal place in all cases. this could cause incorrect rounding down in round-to-even (default) rounding mode, for example, when printing 0.5+DBL_EPSILON with "%.0f". in the fix, LDBL_MANT_DIG/3 is a lazy (non-sharp) upper bound on the number of zeros between any two nonzero decimal digits. Rich Felker1-2/+2
2014-03-09fix buffer overflow in printf formatting of denormals with low bit set•••empirically the overflow was an off-by-one, and it did not seem to be overwriting meaningful data. rather than simply increasing the buffer size by one, however, I have attempted to make the size obviously correct in terms of bounds on the number of iterations for the loops that fill the buffer. this still results in no more than a negligible size increase of the buffer on the stack (6-7 32-bit slots) and is a "safer" fix unless/until somebody wants to do the proof that a smaller buffer would suffice. Rich Felker1-1/+2
2014-03-08in sys/procfs.h, avoid using __WORDSIZE macro•••this was problematic because several archs don't define __WORDSIZE. we could add it, but I would rather phase this macro out in the long term. in our version of the headers, UINTPTR_MAX is available here, so just use it instead. Rich Felker1-1/+1