Commit Graph
6 Commits
Author SHA1 Message Date
Quentin RameauandRich Felker d9bdfd1644 fix memccpy to not access buffer past given size
memccpy would return a pointer over the given size when c is not
found in the source buffer and n reaches 0.
2018-12-02 09:24:15 -05:00
Rich Felker 4d0a82170a fix aliasing-based undefined behavior in string functions
use the GNU C may_alias attribute if available, and fallback to naive
byte-by-byte loops if __GNUC__ is not defined.

this patch has been written to minimize changes so that history
remains reviewable; it does not attempt to bring the affected code
into a more consistent or elegant form.
2018-09-26 14:39:10 -04:00
Szabolcs Nagy 571744447c include cleanups: remove unused headers and add feature test macros 2013-12-12 05:09:18 +00:00
Rich Felker 400c5e5c83 use restrict everywhere it's required by c99 and/or posix 2008
to deal with the fact that the public headers may be used with pre-c99
compilers, __restrict is used in place of restrict, and defined
appropriately for any supported compiler. we also avoid the form
[restrict] since older versions of gcc rejected it due to a bug in the
original c99 standard, and instead use the form *restrict.
2012-09-06 22:44:55 -04:00
Rich Felker cb8dff2149 fix misplaced *'s in string functions (harmless) 2011-04-07 16:19:30 -04:00
Rich Felker b8ff2aaabb add implementation of memccpy function 2011-02-24 12:35:42 -05:00