Andrew Kelley
357235d9de
add behavior test for ptrcasted function pointers
...
See #2626 . The runtime case is solved but comptime is not.
2022-12-27 15:19:00 -07:00
Andrew Kelley
6e9fbc83ca
add behavior test for comptime pointer casting
...
comptime `@ptrCast` a subset of an array, then write through it
closes #2444
2022-12-27 14:44:04 -07:00
Andrew Kelley
f4b067743f
add behavior test for optional error union return type
...
closes #1814
2022-12-27 13:46:57 -07:00
Andrew Kelley
19056cb682
Merge pull request #14024 from Vexu/overflow-arithmetic
...
Make overflow arithmetic builtins return tuples
2022-12-27 13:57:49 -05:00
Eric Joldasov
55c3efcb58
cmake: check llvm-config in separate function
2022-12-27 13:53:46 -05:00
Jakub Konka
aea3460cf5
Merge pull request #14084 from joachimschmidt557/stage2-aarch64
...
stage2 AArch64: small improvements
2022-12-27 18:59:59 +01:00
Jakub Konka
a70cbe779a
macho: add Zig wrapper for compact unwind encoding on arm64
2022-12-27 15:36:28 +01:00
Veikka Tuominen
a777373bb8
enable test on more targets
...
This was fixed by 8a0a6b7387fcd0017db85de14793abfd6ec7f6e5 for targets
without avx512
2022-12-27 15:34:19 +02:00
Veikka Tuominen
9c0f3163a8
value: fix bitcasting packed structs with u0 fields
...
Closes #13942
2022-12-27 15:33:27 +02:00
joachimschmidt557
485082064a
stage2 AArch64: implement field_parent_ptr
2022-12-27 21:26:18 +08:00
joachimschmidt557
d6e6162081
stage2 AArch64: unify callee-preserved regs on all targets
...
also enables many passing behavior tests
2022-12-27 21:17:52 +08:00
Veikka Tuominen
b7730c7478
update zig1.wasm to overflow arithmetic builtin changes
2022-12-27 15:13:14 +02:00
Veikka Tuominen
622311fb9a
update uses of overflow arithmetic builtins
2022-12-27 15:13:14 +02:00
Veikka Tuominen
54160e7f6a
Sema: make overflow arithmetic builtins return tuples
2022-12-27 15:13:14 +02:00
Veikka Tuominen
af9a9a1374
zig fmt: improve handling of comptime tuple fields
2022-12-27 13:52:37 +02:00
zooster
547e3684be
langref: more explicitly document how enum overriding works
2022-12-27 12:53:41 +02:00
Andrew Kelley
3a7a39cb91
Merge pull request #14078 from jacobly0/llvm-opaque-ptrs
...
llvm: remove unnecessary code for opaque pointers
2022-12-27 04:57:01 -05:00
Jacob Young
81318e8704
llvm: add asserts and behavior tests for #14063
...
Closes #14063
2022-12-27 00:12:56 -05:00
Jacob Young
46b49a0a76
llvm: cleanup code no longer needed with opaque pointers
...
When using llvm opaque pointers, typed pointers and pointer bitcasts are
no longer needed. This also avoids needing packed struct layouts that
are nested inside pointers, letting us avoid computing struct layouts
in Sema that could cause unnecessary dependency loops.
2022-12-27 00:12:56 -05:00
Andrew Kelley
1b86a628ac
Merge pull request #14015 from Vexu/recursive-inline
...
Sema: add error for recursive inline call
2022-12-26 20:34:22 -05:00
Andrew Kelley
b0cd24f90e
Merge pull request #14070 from jacobly0/issue/14032
...
Fix #14032
2022-12-26 18:06:19 -05:00
zooster
728cc73819
std.Target.ObjectFormat: specify dxcontainer file ext
2022-12-26 18:03:27 -05:00
Veikka Tuominen
81443fcde8
Sema: add error for recursive inline call
...
Closes #12973
2022-12-26 16:36:30 +02:00
Veikka Tuominen
0b859831ad
update grammar in langref
...
Closes #14072
2022-12-26 16:36:29 +02:00
Veikka Tuominen
3535c4b3b6
Sema: fix elem ptr type of vector in slice
...
Closes #14071
2022-12-26 15:26:27 +02:00
Jacob Young
64865679cf
Sema: add missing resolveLazyValue cases
...
Closes #14032
2022-12-26 04:39:32 -05:00
Jacob Young
8dd844d96f
Sema: fix typo
2022-12-26 04:18:08 -05:00
Matt Knight
cf822c6ddd
@export() with linksection option ( #14035 )
2022-12-25 20:19:50 -05:00
Jacob Young
f5b6019646
Sema: fix missing struct layout for llvm backend
...
Closes #14063
2022-12-25 20:18:15 -05:00
zooster
0c30e006c9
delete empty.zig
...
This is no longer used anywhere.
2022-12-24 23:17:27 -05:00
Andrew Kelley
a193ec432d
Merge pull request #14058 from jacobly0/concat
2022-12-24 13:55:42 -05:00
Jacob Young
6f288051c1
behavior: disable tests on failing backends
2022-12-24 02:54:21 -05:00
Jacob Young
bc913295b5
CBE: fix emitting a partially undefined string literal
2022-12-24 02:40:33 -05:00
Jacob Young
6cd8004213
Sema: relax undefined checks for concat
...
Closes #14037
2022-12-24 02:40:33 -05:00
Jacob Young
0559cdb554
Sema: support concat of tuple and array
...
Closes #14041
2022-12-24 02:40:33 -05:00
Kim SHrier
5bde627f9d
map lower case amd64 to x86_64
2022-12-24 02:23:31 -05:00
Jacob Young
fc0789f8e7
behavior: disable tests that trigger an llvm 15 bug and assertion
...
```
LLVM Emit Object... zig: llvm/include/llvm/ADT/APInt.h:840: void llvm::APInt::lshrInPlace(unsigned int): Assertion `ShiftAmt <= BitWidth && "Invalid shift amount"' failed.
Aborted
```
Tracked by #13782
2022-12-24 02:23:05 -05:00
Frank Denis
c9e3524d0b
HKDF allow expansion up to, and including <hash size> * 255 bytes ( #14051 )
...
Fixes #14050
2022-12-23 21:38:27 +00:00
travisstaloch
581d292381
fix overflow found while fuzzing
...
* allow file level `union {}` to parse as tuple field
this was found while fuzzing zls.
* before this patch the input `union {}` crashed the parser. after
this, it parses correctly just like `struct {}`.
* adds behavior tests for both inputs `struct {}` and `union {}`,
checking that each becomes a file level tuple field.
2022-12-23 23:10:04 +02:00
Jakub Konka
bb62d5105c
Merge pull request #14049 from ziglang/issue-14045
...
macho+zld: write code signature padding before committing load commands
2022-12-23 19:07:36 +01:00
Jakub Konka
22b39f034b
macho+zld: properly deinit code signature object
2022-12-23 14:35:45 +01:00
Jakub Konka
2cb6db2219
link-tests: add macho strict validation test
...
Support more operators when running simple arithmetic tests, and
allow for int literals in the program spec.
2022-12-23 14:02:52 +01:00
Jakub Konka
550ebcce9a
macho+zld: write code signature padding before commiting LCs
...
Otherwise, we were prematurely committing `__LINKEDIT` segment LC
with outdated size (i.e., without code signature being taken into account).
This would scaffold into strict validation failures by Apple tooling.
2022-12-23 12:50:03 +01:00
Andrew Kelley
f211c1559a
Merge pull request #13960 from r00ster91/stage1cruft
...
Close more old stage1 issues
2022-12-22 16:36:55 -05:00
Frank Denis
8d66aacb64
compiler-rt: implement __udivei4 and __umodei4 ( #14023 )
...
Allows dividing and formatting arbitrary-large unsigned integers.
2022-12-22 16:29:19 -05:00
Ryan Liptak
71668fc4e3
Dir.openDirAccessMaskW: Add ACCESS_DENIED as a possible error
...
Can occur when trying to open a directory for iteration but the 'List folder contents' permission of the directory is set to 'Deny'.
This was found because it was being triggered during PATH searching in ChildProcess.spawnWindows if a PATH entry did not have 'List folder contents' permission, so this fixes that as well (note: the behavior on hitting this during PATH searching is to treat it as the directory not existing and therefore will fail to find any executables in a directory in the PATH without 'List folder contents' permission; this matches Windows behavior which also fails to find commands in directories that do not have 'List folder contents' permission).
2022-12-22 14:03:05 -05:00
Andrew Kelley
266e2e9a31
Revert "CI: workaround git bug regarding changed attributes"
...
This reverts commit aa44512b8511e18a334dcee55c1d9ae5d5aba842.
This commit is no longer needed.
2022-12-21 17:17:28 -07:00
r00ster91
a429f72ae8
cases: more test coverage
...
Closes #11986
Closes #11850
Closes #12159
2022-12-21 23:34:29 +01:00
r00ster91
5ecc2b99af
behavior: more test coverage
...
Closes #12450
Closes #13113
Closes #12051
Closes #12092
Closes #12119
Closes #12142
Closes #12450
Closes #13113
Closes #11995
Closes #12000
2022-12-21 23:34:22 +01:00
Ganesan Rajagopal
06f70c030a
Fix missing pthread_key_t definition on linux
...
* pthread_key_t should also be available for non-android platforms
* Also change the type to c_uint because Linux pthreadtypes.h typedefs it as "unsigned int"
Partially addresses #13950
2022-12-21 17:00:41 -05:00