Stephen Gregoratto
3200fae9c5
Linux: Add syscall bindings, enhance documentation.
...
- Add syscall bindings/structures for the `futex2` family.
The documentation is taken from the syscall definitions.
- Add documnentation for the `cachestat` bindings and structures.
Taken from work I did in Cosmopolitian libc.
- Add binding for `map_shadow_stack`.
No documentation for this one, since the kernel devs didn't bother to
do it ¯\_(ツ)_/¯.
2024-01-15 20:05:03 +11:00
Stephen Gregoratto
cca021c211
Linux: Update syscalls for the 6.7 release
...
This release adds the rest of the futex2[1] syscalls, along with
shadow stack[2] support for more architectures.
[1]: https://lwn.net/Articles/940944/
[2]: https://lwn.net/Articles/926649/
2024-01-15 20:05:03 +11:00
Andrew Kelley
32e88251e4
update test case for new const/var compile error
...
commit 8afafa717f5c036595a3a781c63b6be7b478c025 was created when this
error did not exist yet.
2024-01-15 01:53:41 -07:00
Jacob Young
03ed3f56cf
Sema: fix @extern decls
...
Closes #18550
2024-01-15 07:39:05 +01:00
Jakub Konka
3dddb881bf
Merge pull request #18560 from ziglang/elf-report-dupes
...
elf: report duplicate symbol definitions
2024-01-15 07:37:09 +01:00
Jakub Konka
852e7e24b5
Merge pull request #17917 from Jan200101/PR/each_lib_rpath_frontend
...
move rpath to frontend and remove native paths from it
2024-01-15 07:35:12 +01:00
David Rubin
9097bcc06e
add SHT_NOBITS check
2024-01-15 05:27:54 +01:00
Andrew Kelley
f0bac8037c
Sema: fix compilation errors
...
Commit 8afafa717f5c036595a3a781c63b6be7b478c025 passed CI checks against
an older codebase and accumulated silent conflicts.
2024-01-14 19:21:19 -07:00
Andrew Kelley
a5934edd48
std.os.linux.io_uring: fix compilation errors
...
Commit f0c42fbba15a31113dc989ab65c054047423afa3 was created before the
additional compile error for var used instead of const.
2024-01-14 19:20:41 -07:00
Andrew Kelley
f0c42fbba1
Merge pull request #18025 from ianic/io_uring_send_zc
...
io_uring: add send_zc and *_direct operations
2024-01-14 18:10:51 -08:00
expikr
ff23efe9fa
Update pow.zig
2024-01-14 18:09:26 -08:00
expikr
0c70d9c714
use Peer Type Resolution for standalone complex fn
...
use peer type resolution
Update complex.zig
Revert "use peer type resolution"
This reverts commit 1bc681ca5b36d2b55b5efab5a5dbec7e8a17332e.
Revert "Update pow.zig"
This reverts commit 5487e8d3159f832b5a0bf29a06bd12575182464f.
Update pow.zig
Revert "Update pow.zig"
This reverts commit 521153d1ef004d627c785f2d3fe5e6497dc15073.
Update pow.zig
2024-01-14 18:09:17 -08:00
Tristan Ross
9fce1d1ab1
mem: add byteswap array support ( #17959 )
...
also make byteswap work with enums
2024-01-14 21:06:31 -05:00
expikr
f9d8176e94
Update atan2.zig ( #17840 )
...
Co-authored-by: castholm <carl@astholm.se>
2024-01-14 21:04:30 -05:00
expikr
1a7a711964
std.math: add wrap function ( #18154 )
2024-01-14 20:45:39 -05:00
dweiller
8afafa717f
sema: allow slicing *T with comptime known [0..1]
2024-01-14 17:26:45 -08:00
Jakub Konka
b1ffc2b8b3
test/link/elf: patch up relocatable test
2024-01-15 00:18:50 +01:00
Jan200101
8707555c0b
compiler: move each_lib_rpath to frontend
...
Co-authored-by: Andrew Kelley <andrew@ziglang.org>
2024-01-14 16:16:00 -07:00
Jan200101
e517d5a51e
std.zig.system.NativePaths: add NixOS lib dirs to the rpath
2024-01-14 15:57:45 -07:00
Jakub Konka
a8b9f0cf22
std/Build/Step/Compile: do not propagate deps of complex addObject step
2024-01-14 23:07:21 +01:00
Jakub Konka
d7c2324cdb
test/link/elf: trigger build system bug testing relocatable mode
2024-01-14 20:51:03 +01:00
Jakub Konka
7a96907b92
elf: check for and report duplicate symbol definitions
2024-01-14 20:39:00 +01:00
Andrew Kelley
4debd4338c
Merge pull request #18547 from ziglang/gh-fork-dump-fchmod-fixes
...
Add `fchmodat` fallback on Linux when `flags` is nonzero.
2024-01-14 11:26:25 -08:00
Krzysztof Wolicki
78549d1e10
mingw: Add missing misc/mingw-access.c and misc/ucrt-access.c
2024-01-14 11:25:01 -08:00
jimying
89d4ac6289
Fix minor error: std.ChildProcess.exec() already rename to run()
2024-01-13 23:23:39 -08:00
jimying
a30147c992
libcxx: only pass -DHAVE___CXA_THREAD_ATEXIT_IMPL for glibc >=2.18
...
this fix #9412
2024-01-13 23:17:33 -08:00
emberfade
c2659e0371
langref: Fix example for Generic Data Structures
2024-01-13 23:13:44 -08:00
Krzysztof Wolicki
60d411184e
autodoc: Rename Module (Compilation Module) to Zcu in preparation for big rename
2024-01-13 23:13:05 -08:00
Andrew Kelley
09074d7cd7
std.os: proper use of inline
...
Uses `inline` only to forward the comptime-ness of the flags parameter
to function selection.
Also fixes doc comments in std.c.versionCheck.
2024-01-13 23:56:32 -07:00
Stephen Gregoratto
01cc904fc7
Rework fchmodat tests
...
Based on the Linux kernel fchmodat2 test
2024-01-13 23:52:01 -07:00
Stephen Gregoratto
bc69d62669
Linux: Add fchmodat fallback when flags is nonzero
...
The check for determining whether to use the fallback code has been
moved into an inline function as per Andrew's comments in #17954 .
2024-01-13 23:52:01 -07:00
Stephen Gregoratto
cf6751ae55
Add fchmodat2 bits to os/linux.zig
2024-01-13 23:52:01 -07:00
Stephen Gregoratto
26db31f6f6
Add fchmodat2 to the Linux syscall list
...
This syscall was added to simplify the the libc implementations of
fchmodat, as the original syscall does not take a `flags` argument.
Another syscall, `map_shadow_stack`, was also added for x86_64.
2024-01-13 23:52:01 -07:00
Andrew Kelley
bd46410419
Revert "Merge pull request #18410 from dweiller/by-length-slice-bug"
...
This reverts commit d9d840a33ac8abb0e616de862f592821a7f4a35e, reversing
changes made to a04d4330945565b8d6f298ace993f6954c42d0f3.
This is not an adequate implementation of the missing safety check, as
evidenced by the changes to std.json that are reverted in this commit.
Reopens #18382
Closes #18510
2024-01-13 23:21:44 -07:00
Carl Åstholm
0f9345ea9a
Expose -f(no-)formatted-panics to the build system (again)
2024-01-13 22:07:34 -08:00
F3real
1322049e24
Don't crash or CR/LF line endings in docgen
2024-01-13 22:05:09 -08:00
Ryan Liptak
4dd3505e43
std.ArrayList: Clarify that ensureTotalCapacity/ensureTotalCapacityPrecise will never shrink the array
...
Closes #18499
2024-01-13 19:58:22 -08:00
vinnichase
279607cae5
Fix fmt UTF-8 characters as fill ( #18533 )
...
Co-authored-by: Jacob Young <jacobly0@users.noreply.github.com>
2024-01-13 22:47:03 -05:00
Nameless
b723296e1f
std.http: add missing documentation and a few examples
2024-01-13 18:51:38 -08:00
Nameless
832f6d8f7f
std.Uri: fix implementation of resolve with trailing slashes
2024-01-13 18:50:29 -08:00
Guillaume Wenzek
c5d359e4cd
fix #17142 , wrong comptime log_int computation
2024-01-13 18:46:16 -08:00
Andrew Kelley
d55d1e32b6
Merge pull request #18261 from ianic/tar_tests
...
std:tar Copy Go tar test suite and make them pass
2024-01-13 18:44:14 -08:00
Andrew Kelley
3f809cbe7d
build.zig: don't install testdata
2024-01-13 19:37:33 -07:00
Igor Anić
7d3a31872e
tar: improve diagnostic reporting
...
Using Python testtar file (mentioned in #14310 ) to test diagnostic
reporting.
Added computing checksum by using both unsigned and signed header bytes
values.
Added skipping gnu exteneded sparse headers while reporting unsupported
header in diagnostic.
Note on testing:
wget https://github.com/python/cpython/raw/3.11/Lib/test/testtar.tar -O
/tmp/testtar.tar
```
test "Python testtar.tar file" {
const file_name = "testtar.tar";
var file = try std.fs.cwd().openFile("/tmp/" ++ file_name, .{});
defer file.close();
var diag = Options.Diagnostics{ .allocator = std.testing.allocator };
defer diag.deinit();
var iter = iterator(file.reader(), &diag);
while (try iter.next()) |f| {
std.debug.print("supported: {} {s} {d}\n", .{ f.kind, f.name, f.size });
try f.skip();
}
for (diag.errors.items) |e| {
switch (e) {
.unsupported_file_type => |u| {
std.debug.print("unsupported: {} {s}\n", .{ u.file_type, u.file_name });
},
else => unreachable,
}
}
}
```
2024-01-13 19:37:33 -07:00
Igor Anić
7923a53996
tar: rename reader to iterator
...
Itarator has `next` function, iterates over tar files. When using from
outside of module with `tar.` prefix makes more sense.
var iter = tar.iterator(reader, null);
while (try iter.next()) |file| {
...
}
2024-01-13 19:37:33 -07:00
Igor Anić
e21a12e56b
tar: use @embedFile in tests
...
Like in other tests which uses testdata files (compress). That enables
wasi testing also, was failing because file system operations in tests.
2024-01-13 19:37:33 -07:00
Igor Anić
76fe1f53d5
tar: fix tests on 32-bit platforms
2024-01-13 19:37:33 -07:00
Igor Anić
a75fd4ff15
tar: move test cases to std/tar/testdata
...
Create std/tar/test.zig for test which uses cases from testdata.
2024-01-13 19:37:33 -07:00
Igor Anić
f8e42d6b30
tar: add Go test case files to the project
2024-01-13 19:37:33 -07:00
Igor Anić
c07527abac
tar: reorganize file, functions before tests
2024-01-13 19:37:33 -07:00