diff --git a/lib/std/os/linux.zig b/lib/std/os/linux.zig index 1b3a71cebd..9a01b90142 100644 --- a/lib/std/os/linux.zig +++ b/lib/std/os/linux.zig @@ -3222,16 +3222,21 @@ pub const epoll_data = extern union { @"u64": u64, }; -// On x86_64 the structure is packed so that it matches the definition of its -// 32bit counterpart -pub const epoll_event = switch (native_arch) { - .x86_64 => packed struct { - events: u32, - data: epoll_data, +pub const epoll_event = switch (builtin.zig_backend) { + // stage1 crashes with the align(4) field so we have this workaround + .stage1 => switch (native_arch) { + .x86_64 => packed struct { + events: u32, + data: epoll_data, + }, + else => extern struct { + events: u32, + data: epoll_data, + }, }, else => extern struct { events: u32, - data: epoll_data, + data: epoll_data align(4), }, }; diff --git a/src/clang_options_data.zig b/src/clang_options_data.zig index 99f694cbbe..0757875add 100644 --- a/src/clang_options_data.zig +++ b/src/clang_options_data.zig @@ -1991,7 +1991,7 @@ flagpsl("MT"), .{ .name = "verbose", .syntax = .flag, - .zig_equivalent = .other, + .zig_equivalent = .verbose, .pd1 = false, .pd2 = true, .psl = false, diff --git a/tools/update_clang_options.zig b/tools/update_clang_options.zig index bde5c3d665..6bf4c47ebc 100644 --- a/tools/update_clang_options.zig +++ b/tools/update_clang_options.zig @@ -272,6 +272,10 @@ const known_options = [_]KnownOpt{ .name = "v", .ident = "verbose", }, + .{ + .name = "verbose", + .ident = "verbose", + }, .{ .name = "L", .ident = "lib_dir",