zig/lib/std/os
Andrew Kelley 314ce5465d std: better definition for std.os.linux.epoll_event
The previous definition depends on a non-lang-spec-compliant memory
layout for packed structs, which happens to trigger #11989 in stage2.

This commit changes the struct to be an extern struct with an
align(4) field. However, stage1 cannot handle this, so conditional
compilation logic is used to select different struct definitions
depending on stage1 vs stage2.

This works around #11989 but does not solve the underlying problem -
putting an extern union inside a packed struct will still trigger the
assert.

After this, both stage1 and stage2 std lib tests run assertion-clean
with a debug LLVM 13.
2022-07-03 22:18:05 -07:00
..
linux std.os.linux.clone: upgrade to stage2 fn ptr semantics 2022-06-27 18:27:06 -07:00
plan9 plan9: more syscalls 2021-11-09 07:08:27 -05:00
uefi std.os.uefi: Add BlockIoProtocol 2022-04-19 19:51:19 -04:00
windows add const to msghdr_const iov and control pointers 2022-06-07 15:23:44 -04:00
darwin.zig macos: update Mach routines for accessing page info 2022-03-17 10:42:11 +01:00
linux.zig std: better definition for std.os.linux.epoll_event 2022-07-03 22:18:05 -07:00
plan9.zig plan9: more syscalls 2021-11-09 07:08:27 -05:00
posix_spawn.zig std: introduce posix_spawn as an alt to fork-exec 2022-03-16 19:40:44 +01:00
test.zig std: handle stage2 function pointer semantics in test 2022-06-06 13:11:50 -07:00
uefi.zig std.os.uefi: fix GUID formatting (#11452) 2022-04-17 06:15:15 -04:00
wasi.zig stdlib: Add emulated CWD to std.os for WASI targets 2022-03-03 14:31:49 -07:00
windows.zig math: make cast return optional instead of an error 2022-05-27 16:43:33 -04:00