about summary refs log tree commit diff
path: root/src/thread/thrd_exit.c
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2019-10-13 17:21:36 -0400
committerRich Felker <dalias@aerifal.cx>2019-10-13 17:21:36 -0400
commit716745e00e304a650a8eef57c15fbd326168096e (patch)
tree97d03a73a95aea07aad13e79dda469ddaca4dd73 /src/thread/thrd_exit.c
parentdb3cc9a319c788cf5241ea68d3fa86b43f35733e (diff)
downloadmusl-716745e00e304a650a8eef57c15fbd326168096e.tar.gz
musl-716745e00e304a650a8eef57c15fbd326168096e.tar.xz
musl-716745e00e304a650a8eef57c15fbd326168096e.zip
fix aliasing-based undefined behavior in mbsrtowcs
mbsrtowcs contains "vectorized" loops to quickly step over bytes
without the high bit set; these have undefined behavior by virtue of
aliasing uint32_t over top of char data for the accesses.

commit 4d0a82170a25464c39522d7190b9fe302045ddb2 fixed the
corresponding usage in string functions by using the may_alias
attribute conditional on __GNUC__ and disabled the vectorized code in
its absence. do the same for mbsrtowcs.
Diffstat (limited to 'src/thread/thrd_exit.c')
0 files changed, 0 insertions, 0 deletions