Alex Rønne Petersen
51a6a5a2a6
Revert "std.math.modf: disable vector test on LoongArch with LSX"
...
This reverts commit 35d2b1e99a .
The bug was fixed in LLVM 22.
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
8eb8034af9
Revert "std.zig.system: Force soft_float feature on for MIPS soft float targets."
...
This reverts commit 71a237e764 .
The bug was fixed in LLVM 22.
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
cb2cb21b31
std.zig.system.x86: improve AVX10 detection
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
13c6e227a9
std.zig.system.x86: require OS APX save support for APX features
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
44004b05ef
std.zig.system.x86: detect more APX features
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
c46a8e0d2c
std.zig.system.x86: detect Diamonds Rapids, Wildcat Lake, and Nova Lake
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
a24eee8390
std.zig.system.x86: fix prefetchi detection on AMD
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
6880b5678a
std.zig.system.arm: add detection for a bunch more cores
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
eb041a514f
std.zig.system.windows: update aarch64 CPU feature detection
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
7c3d4642ae
std.os.windows: update PF feature flags from winnt.h
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
1be84a39b8
compiler: fix and simplify DllMainCRTStartup handling
...
See: https://github.com/llvm/llvm-project/pull/171680
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
593f45ee02
llvm: switch most targets to using half and fp128 IR types
...
As of LLVM 22, most backends can (finally) handle legalization of these types as
necessary, so we don't need to do it ourselves anymore.
closes https://github.com/ziglang/zig/issues/23674
2026-04-25 21:54:47 +02:00
Alex Rønne Petersen
9e1e54d324
compiler-rt: additionally export __trunctfhf2 as __trunckfhf2 on powerpc
...
This is the name LLVM 22 expects.
2026-04-25 21:54:47 +02:00
Alex Rønne Petersen
ca0b3318a0
std.Target: update CPU and feature data to LLVM 22
2026-04-25 21:54:47 +02:00
Alex Rønne Petersen
c855c61432
libtsan: backport llvm/llvm-project#194116
...
https://github.com/llvm/llvm-project/pull/194116
2026-04-25 21:54:47 +02:00
Alex Rønne Petersen
f3bd49a5d8
libtsan: backport llvm/llvm-project#183411
...
https://github.com/llvm/llvm-project/pull/183411
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
dbaea8d67e
libtsan: update to LLVM 22
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
e79b4e907a
libunwind: update to LLVM 22
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
dfabf1586f
libcxx: update to LLVM 22
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
80212b03ff
libcxxabi: update to LLVM 22
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
520af69660
zig cc: update intrinsic headers to LLVM 22
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
8deae2da4c
std.zig.llvm.Builder: fix writing u64 max constant for type bit_count > 64
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
48d5b66677
std.Target: fuchsia supports arm/thumb now
2026-04-25 21:49:38 +02:00
Alex Rønne Petersen
8a1ec6a54d
std.Target: fix Abi.float() for muslsf
2026-04-25 21:49:38 +02:00
Jonathan Marler
23bcb8148f
add missing CONNECTION_REFUSED and CONNECTION_RESET errors for windows
...
Adds missing errors CONNECTION_REFUSED for netConnectIpWindows and
CONNECTION_RESET for both netReadWindows and netWriteWindows. I'm able
to induce these 3 errors on my Windows 11 machine.
2026-04-25 05:20:16 +02:00
Sertonix
5cc281e723
std.os.linux: avoid invalid asm error with gcc on x86
...
Even though these registry mentions are supposed to be in a comment they
seem to still be interpreted by gcc.
Alternatively one could try to make zig not include comments in assembly
blocks when generating C code.
In function 'os_linux_x86_syscall6__6685',
inlined from 'os_linux_copy_file_range__4300' at zig2.c:396643:7,
inlined from 'link_MappedFile_copyFileRange__14079.isra' at zig2.c:289222:10:
zig2.c:396692:2: error: invalid 'asm': operand number missing after %-letter
396692 | __asm volatile(" push %[args56]\n push %%ebp\n mov 4(%%esp), %%ebp\n mov %%edi, 4(%%esp)\n // The saved %edi and %ebp are on the stack, and %ebp points to `args56`.\n // Prepare the last two args, syscall, then pop the saved %ebp and %edi.\n mov (%%ebp), %%edi\n mov 4(%%ebp), %%ebp\n int $0x80\n pop %%ebp\n pop %%edi": [ret]"=r"(t5): [number]"r"(t6), [arg1]"r"(t7), [arg2]"r"(t8), [arg3]"r"(t9), [arg4]"r"(t10), [args56]"rm"(t2): "memory");
| ^~~~~
zig2.c:396692:2: error: invalid 'asm': operand number missing after %-letter
zig2.c:396692:2: error: invalid 'asm': operand number missing after %-letter
zig2.c:396692:2: error: invalid 'asm': operand number missing after %-letter
zig2.c:396692:2: error: invalid 'asm': operand number missing after %-letter
2026-04-24 07:33:22 +02:00
Andrew Kelley
f6258b562d
Merge pull request 'fix bugs with handling fuzzing crashes' ( #32033 ) from gooncreeper/zig:fuzz-crash-report-bugs into master
...
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/32033
Reviewed-by: Andrew Kelley <andrew@ziglang.org >
2026-04-24 02:31:12 +02:00
Sertonix
084eab03d7
compiler_rt: Fix extern mem{set,cpy,move} type on arm
...
Otherwise gcc will refuse to compile the bootstrap compiler_rt.c.
Excerpt of the errors:
/builds/sertonix/aports/community/zig/src/zig-0.16.0/build/compiler_rt.c:1459:21: error: conflicting types for 'memcpy'; have 'uint8_t *(uint8_t *, const uint8_t *, uintptr_t)' {aka 'unsigned char *(unsigned char *, const unsigned char *, unsigned int)'}
1459 | zig_extern uint8_t *memcpy(uint8_t *a0 zig_nonstring, uint8_t const *a1 zig_nonstring, uintptr_t a2);
| ^~~~~~
/builds/sertonix/aports/community/zig/src/zig-0.16.0/stage1/zig.h:510:18: note: previous declaration of 'memcpy' with type 'void *(void *, const void *, unsigned int)'
510 | zig_extern void *memcpy (void *zig_restrict, void const *zig_restrict, size_t);
| ^~~~~~
/builds/sertonix/aports/community/zig/src/zig-0.16.0/build/compiler_rt.c: In function 'zig_e___negxf2':
/builds/sertonix/aports/community/zig/src/zig-0.16.0/build/compiler_rt.c:1758:9: error: passing argument 1 of 'memcpy' from incompatible pointer type [-Wincompatible-pointer-types]
1758 | memcpy(&t0, &a0, 16);
| ^~~
| |
| zig_u128 *
2026-04-23 08:42:53 +02:00
Kendall Condon
332d632ccc
collect all stderr on fuzzing crash
2026-04-22 20:54:17 -04:00
Kendall Condon
122e0c26f2
properly scan through inputs when saving fuzzing crash
2026-04-22 20:54:17 -04:00
Matthew Lugg
99b90a4315
incremental: add misssing dependency on backing/tag type source code
2026-04-23 01:13:22 +02:00
Andrew Kelley
b047641f26
distribute the lldb pretty printers
...
rather than having them only in the source tree in tools/, distribute
them to zig users.
gdb ones are too outdated, delete them.
stage1 also is useless now.
2026-04-22 16:11:02 -07:00
andrew.kraevskii
bbab366b78
Audit usages of toOwnedSlice ( #32001 )
...
Followup to #30769
I grepped for `try .*toOwnedSlice` and checked all of them by hand.
Fixes a bunch of memory leaks removes usages or `errdefer` and `vars` in some places. I also switched array_list.Managed to ArrayList where it was convenient.
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/32001
Reviewed-by: Andrew Kelley <andrew@ziglang.org >
2026-04-22 19:35:46 +02:00
rpkak
03955476ad
zigc: test and fix strtol and similar
2026-04-22 19:30:39 +02:00
Alex Rønne Petersen
b985404569
std.os.linux: update syscalls to 7.0
2026-04-22 08:37:56 +02:00
Alex Rønne Petersen
7ec6872cc4
libc: update Linux headers to 7.0
2026-04-22 08:37:15 +02:00
Alex Rønne Petersen
8bf72740e3
std.os.linux.IoUring: disable tests on PowerPC
...
https://codeberg.org/ziglang/zig/issues/31562
2026-04-22 08:27:51 +02:00
glowsquid
0b768cd9dd
zig reduce: fix compilation ( #31930 )
...
fixes #31926
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/31930
Reviewed-by: Andrew Kelley <andrew@ziglang.org >
2026-04-22 02:00:41 +02:00
Chris Boesch
3ea77badf9
libc: strdup, strndup, wcsdup ( #31935 )
...
Contributes to: #30978
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/31935
Reviewed-by: Andrew Kelley <andrew@ziglang.org >
2026-04-22 01:57:58 +02:00
Pavel Verigo
36faf76fe1
AstGen: add missing addRestoreErrRetIndex calls when handling for/while expr
...
Fixes #30912
2026-04-22 00:17:52 +02:00
Andrew Kelley
d4cac43d30
Merge pull request 'libc: add common implementations of pthread_spin_*' ( #31990 ) from GasInfinity/zig:pthread-spin into master
...
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/31990
Reviewed-by: Andrew Kelley <andrew@ziglang.org >
2026-04-21 22:29:33 +02:00
Andrew Kelley
b5d8966e05
Merge pull request 'package fetching fixes and enhancements' ( #31992 ) from fetch-enhancements into master
...
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/31992
2026-04-21 18:06:13 +02:00
GasInfinity
f8e9593851
fix: wasm requires strict function prototypes
...
* `pthread_mutex_*` and friends are also invalid then but they're not
currently tested (and there's no wasi prong in `pthread_mutex_t`)
2026-04-21 14:45:24 +02:00
GasInfinity
a2a91199d7
fix: add pthread_spin_* definitions for the BSDs in std.c
...
* each BSD has a different one
2026-04-21 10:31:47 +02:00
GasInfinity
61cd38e8ac
feat(libzigc): add common implementations of pthread_spin_*
...
* and remove their mingw, musl and wasi implementations
2026-04-21 09:03:06 +02:00
Ryan Liptak
3252a05531
Prefer <err> => |e| return e over <err> => return <err>
...
Avoids the potential for a typo on the `return <err>` side of the prong
2026-04-20 18:03:14 -07:00
Andrew Kelley
f887bea4d3
fix overridden pkg dir path
...
the previous code made it relative to the build directory
also add a corresponding env var and logic for build command
2026-04-20 16:38:05 -07:00
Frank Denis
98cc059622
crypto.asn1.Oid: Reject empty OID encodings ( #31983 )
...
The DER decoder accepted zero-length OID payloads producing an Oid value that would panic later.
Co-authored-by: Frank Denis <github@pureftpd.org >
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/31983
Reviewed-by: Andrew Kelley <andrew@ziglang.org >
Co-authored-by: Frank Denis <jedisct1@noreply.codeberg.org >
Co-committed-by: Frank Denis <jedisct1@noreply.codeberg.org >
2026-04-20 21:54:04 +02:00
Frank Denis
98ddebc380
std.crypto.Certificate: fix UTCTime year interpretation
...
UTCTime years in the range 50-99 must map to 1950-1999, but the
parser unconditionally added 2000, producing dates 100 years in the
future.
This caused verify() to accept certificates whose validity actually
expired decades ago.
Change that to match what OpenSSL, BoringSSL, etc. do
2026-04-20 21:45:08 +02:00
Frank Denis
525aff6048
std.crypto.ascon: fix streaming XOF/CXOF
...
AsconXof128 and AsconCxof128 were applying the padding in update()
calls. That was totally fine for one-shot hashing, but not for
streaming (multiple update() calls before finalization).
2026-04-20 18:29:46 +02:00