summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2014-05-24 20:39:46 -0400
committerRich Felker <dalias@aerifal.cx>2014-05-24 20:39:46 -0400
commit44d28e55121f9a7d736df59c09b963e17c8c4cfa (patch)
treeb60d331719601cfeebfcf9e4ad081fe0717dc7c8 /src
parent0b4e0732db5e6ed0cca78d787cbd764248fcbaac (diff)
downloadmusl-44d28e55121f9a7d736df59c09b963e17c8c4cfa.tar.gz
overhaul siginfo_t definition in signal.h
the main motivation for this change is that, with the previous definition, it was arguably illegal, in standard C, to initialize both si_value and si_pid/si_uid with designated initializers, due to the rule that only one member of a union can have an initializer. whether or not this affected real-world application code, it affected some internal code, and clang was producing warnings (and possibly generating incorrect code). the new definition uses a more complex hierarchy of structs and unions to avoid the need to initialize more than one member of a single union in usage cases that make sense. further work would be needed to eliminate even the ones with no practical applications. at the same time, some fixes are made to the exposed names for nonstandard fields, to match what software using them expects.
Diffstat (limited to 'src')
0 files changed, 0 insertions, 0 deletions