Merge pull request #13418 from ryanschneider/signal-alignment-13216
std.os: fix alignment of Sigaction.handler_fn
This commit is contained in:
@@ -3130,7 +3130,7 @@ pub const all_mask: sigset_t = [_]u32{0xffffffff} ** @typeInfo(sigset_t).Array.l
|
||||
pub const app_mask: sigset_t = [2]u32{ 0xfffffffc, 0x7fffffff } ++ [_]u32{0xffffffff} ** 30;
|
||||
|
||||
const k_sigaction_funcs = struct {
|
||||
const handler = ?std.meta.FnPtr(fn (c_int) callconv(.C) void);
|
||||
const handler = ?std.meta.FnPtr(fn (c_int) align(1) callconv(.C) void);
|
||||
const restorer = std.meta.FnPtr(fn () callconv(.C) void);
|
||||
};
|
||||
|
||||
@@ -3157,7 +3157,7 @@ pub const k_sigaction = switch (native_arch) {
|
||||
|
||||
/// Renamed from `sigaction` to `Sigaction` to avoid conflict with the syscall.
|
||||
pub const Sigaction = extern struct {
|
||||
pub const handler_fn = std.meta.FnPtr(fn (c_int) callconv(.C) void);
|
||||
pub const handler_fn = std.meta.FnPtr(fn (c_int) align(1) callconv(.C) void);
|
||||
pub const sigaction_fn = std.meta.FnPtr(fn (c_int, *const siginfo_t, ?*const anyopaque) callconv(.C) void);
|
||||
|
||||
handler: extern union {
|
||||
|
||||
Reference in New Issue
Block a user