aboutsummaryrefslogtreecommitdiff
path: root/lib/std/os/linux/io_uring.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2022-07-05 21:56:55 -0700
committerAndrew Kelley <andrew@ziglang.org>2022-07-05 21:56:55 -0700
commit683ace74724e5818bd01d8a6abb03f5991c4e27b (patch)
tree7bbab80962a17ee006ba11aa6281b10190422d31 /lib/std/os/linux/io_uring.zig
parentd8fc8d0118a6ae99c0298d584faf1d8b5c6712c4 (diff)
parent6279a1d684193ffbe34b384250cdbb5ab4a328f9 (diff)
downloadzig-683ace74724e5818bd01d8a6abb03f5991c4e27b.tar.gz
zig-683ace74724e5818bd01d8a6abb03f5991c4e27b.zip
Merge remote-tracking branch 'origin/master' into llvm14
Diffstat (limited to 'lib/std/os/linux/io_uring.zig')
-rw-r--r--lib/std/os/linux/io_uring.zig8
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/std/os/linux/io_uring.zig b/lib/std/os/linux/io_uring.zig
index 144927771f..1f25413d10 100644
--- a/lib/std/os/linux/io_uring.zig
+++ b/lib/std/os/linux/io_uring.zig
@@ -1902,6 +1902,12 @@ test "openat" {
const path = "test_io_uring_openat";
defer std.fs.cwd().deleteFile(path) catch {};
+ // Workaround for LLVM bug: https://github.com/ziglang/zig/issues/12014
+ const path_addr = if (builtin.zig_backend == .stage2_llvm) p: {
+ var workaround = path;
+ break :p @ptrToInt(workaround);
+ } else @ptrToInt(path);
+
const flags: u32 = os.O.CLOEXEC | os.O.RDWR | os.O.CREAT;
const mode: os.mode_t = 0o666;
const sqe_openat = try ring.openat(0x33333333, linux.AT.FDCWD, path, flags, mode);
@@ -1911,7 +1917,7 @@ test "openat" {
.ioprio = 0,
.fd = linux.AT.FDCWD,
.off = 0,
- .addr = @ptrToInt(path),
+ .addr = path_addr,
.len = mode,
.rw_flags = flags,
.user_data = 0x33333333,