Veikka Tuominen
6aa438f065
Sema: add null pointer slice safety check when len is comptime known
2022-08-05 22:13:57 +03:00
Veikka Tuominen
eec2978fac
Sema: better safety check on switch on corrupt value
2022-08-05 22:13:57 +03:00
N00byEdge
18440cb239
std.mem.zeroes: Zero sized structs with uninitialized members ( #12246 )
...
`std.mem.zeroes(struct{handle: void})` Failed with the following error before:
```
/nix/store/l6v4359wc9xrxxmvvp3rynsb5s3d78xf-zig-0.9.1/lib/zig/std/mem.zig:270:42: error: missing field: 'handle'
if (@sizeOf(T) == 0) return T{};
^
```
2022-08-05 15:47:52 +03:00
Allan Regush
44c321c05e
std.enums: make directEnumArrayLen public
2022-08-05 15:41:03 +03:00
Felix "xq" Queißner
263b5933d2
Makes std.meta.Tuple and std.meta.ArgsTuple generate a unique type instead of generating one per invocation.
2022-08-05 15:39:53 +03:00
Meredith Oleander
fd3415ad5e
translate-c: fix alignment in pointer casts
2022-08-05 15:38:48 +03:00
Stephen Gregoratto
b3950d4a88
Update Linux syscall list for 5.19
...
New changes: memfd_secret implemented for RISC-V.
2022-08-05 15:36:32 +03:00
Veikka Tuominen
42ade6a114
Merge pull request #12300 from antlilja/getParamName
...
Replace param_names and anytype_args fields inside of Fn with functions
2022-08-05 15:29:59 +03:00
Loris Cro
259f407160
init-exe template: align cli tests to new template
2022-08-05 00:42:53 +02:00
Loris Cro
7ffba492a5
autodoc: fix inconsistency when indexing generic types for search
...
closes #12334
2022-08-05 00:11:32 +02:00
Loris Cro
55ec2148fd
autodoc: fix analysis of function return types
2022-08-04 23:24:18 +02:00
Loris Cro
616f65df75
init-exe template: add flushing to the buffered writer
2022-08-04 21:12:42 +02:00
Loris Cro
cbac7a0194
init-exe template: small improvements
2022-08-04 20:27:46 +02:00
Loris Cro
fb0b9f05b3
new init-exe template
...
- removed an unnecessary (and confusing) `anyerror` fronm the function
signature of `main`
- replaced the call to std.log with two prints: one to stderr and one to
stdout
- replaced the test code with a better example
2022-08-04 20:10:43 +02:00
Jakub Konka
4a4f3c50ce
Merge pull request #12320 from ziglang/macho-zld-sync
2022-08-03 22:02:50 -07:00
Andrew Kelley
e483336ba4
Merge pull request #12318 from Vexu/stage2-compile-errors
...
Stage2: misc compile error improvements
2022-08-03 20:13:07 -07:00
Jakub Konka
007eb3bd71
macho: fix some TODOs
2022-08-03 21:26:52 +02:00
Jakub Konka
2c8fc3b597
macho: add missing u64 to usize casts
...
Fixes 32bit builds.
2022-08-03 21:19:41 +02:00
Jakub Konka
90e3268270
macho: do not preempt segment headers; do it when commiting to file
...
This way, tracking segment-to-section mapping becomes a lot easier
since it's effectively just start index plus number of sections
defined within the segment. If a section becomes empty however
care needs to be taken to remove the header upon committing to the
final binary.
2022-08-03 21:19:41 +02:00
Jakub Konka
421d3e8d28
macho: add missing align cast in LoadCommandIterator
2022-08-03 21:19:41 +02:00
Jakub Konka
1e710396d4
macho: fix linking in incremental context
...
Fix incorrect writing of symtab and strtab in dSYM bundle in incremental
context.
Fix incorrectly navigating unnamed consts (freeing) in incremental context.
This is currently hard-coded to require all consts to land in `__TEXT,__const`,
which is wrong and needs a rewrite.
2022-08-03 21:19:41 +02:00
Jakub Konka
7bba3d330a
macho: cleanup output section selection logic
...
Cache only section indexes used by the linker for synthetic sections
and/or incremental codepath.
2022-08-03 21:19:41 +02:00
Jakub Konka
bb532584bc
macho: update how we insert output sections
...
Instead of generating sections upfront, allow generation by scanning
the object files for input -> output sections mapping. Next, always
strive to keep output sections in the final container sorted as they
appear in the final binary. This makes the linker less messy wrt
handling of output sections sort order for dyld/macOS not to complain.
There's still more work to be done for incremental context though
to make this work but looks promising already.
2022-08-03 21:19:41 +02:00
Jakub Konka
f26d5ee7ea
macho: sync with zld
...
gitrev a2c32e972f8c5adfcda8ed2d99379ae868f59c24
a2c32e972f
2022-08-03 21:19:41 +02:00
Loris Cro
4c750016eb
autodoc: inferred error unions in function return values
2022-08-03 17:21:56 +02:00
Loris Cro
ecccf1f91f
Add codeowners file for automated PR assignment
...
Added myself for Autodoc related files.
2022-08-03 16:26:53 +02:00
Loris Cro
dd8ca27979
Merge pull request #12323 from ziglang/autodoc-issue-template
...
Update issue templates
2022-08-03 16:20:59 +02:00
Loris Cro
c85bdbffa9
Update issue templates
2022-08-03 16:20:27 +02:00
Veikka Tuominen
4ab60dc18b
Sema: add error for dependency loops
2022-08-03 17:10:39 +03:00
Veikka Tuominen
b79929b2ea
AstGen: better source location for if/while condition unwrapping
2022-08-03 16:45:33 +03:00
Veikka Tuominen
d1d24b426d
AstGen: check loop bodies and else branches for unused result
2022-08-03 16:45:33 +03:00
Veikka Tuominen
aa78ebaf95
Sema: improve circular dependency errors
2022-08-03 16:45:33 +03:00
Veikka Tuominen
797ded47f0
Sema: move last error message from Inlining
to Sema
2022-08-03 16:45:33 +03:00
Veikka Tuominen
02112f8836
AstGen: add error for break/continue out of defer expression
2022-08-03 16:45:33 +03:00
Veikka Tuominen
6547c3887e
Sema: add error for closure capture at runtime
2022-08-03 16:45:33 +03:00
Frank Denis
fa321a07cd
crypto.sign.ed25519: include a context string in blind key signatures ( #12316 )
...
The next revision of the specification is going to include a context
string in the way blinded scalars are computed.
See:
https://github.com/cfrg/draft-irtf-cfrg-signature-key-blinding/issues/30#issuecomment-1180516152
https://github.com/cfrg/draft-irtf-cfrg-signature-key-blinding/pull/37
2022-08-03 15:25:15 +02:00
Loris Cro
447a4cc115
autodoc: fix off-by-1 error in analysis of pointer types
2022-08-02 17:49:36 +02:00
Loris Cro
c5afefec42
autodoc: fix autodoc analysis for @typeInfo
...
We were previously erroneously saving it as a `@TypeOf`.
2022-08-02 17:49:36 +02:00
Loris Cro
622714b76b
autodoc: fix frontend crash while rendering std.mem
...
Previously we expected to only find decl refs in a `foo.bar.baz`
type of expression. This would crash when trying to render something
like `@typeInfo(T).Int.bits`. We now properly account for builtins
and other components.
2022-08-02 17:49:36 +02:00
Veikka Tuominen
14f0b70570
Sema: add safety for sentinel slice
2022-08-02 18:34:30 +03:00
Veikka Tuominen
292906fb23
Sema: fix reify Fn alignment and args
2022-08-02 18:33:03 +03:00
Veikka Tuominen
4831c1c65f
Merge pull request #12277 from Vexu/stage2-compile-errors
...
Stage2: validate packed struct field types
2022-08-02 18:32:44 +03:00
Loris Cro
2375658da9
Merge pull request #12276 from r00ster91/shortdesc
...
autodoc: better short description algorithm
2022-08-02 16:32:08 +02:00
Loris Cro
9ba2377d64
Merge pull request #12305 from squeek502/autodoc-field-doc-borders
...
autodoc: Add borders to field docs to make it clear which field they are associated with
2022-08-02 16:30:12 +02:00
Veikka Tuominen
e47706f344
Sema: validate packed struct field types
2022-08-01 23:59:40 +03:00
Veikka Tuominen
f1768b40b2
stage2: better source location for var decls
2022-08-01 23:37:01 +03:00
Veikka Tuominen
57f9405a8f
Sema: validate bitcast operand type
2022-08-01 23:37:01 +03:00
Ryan Liptak
e7b6a18331
std.fs: Split Iterator.next on Linux and WASI to allow for handling platform-specific errors
...
Follow up to #12226 , implements the compromise detailed in https://github.com/ziglang/zig/issues/12211#issuecomment-1196011590
2022-08-01 19:38:05 +03:00
antlilja
ab3b614a33
Removed anytype_args field from Fn
...
anytype_args field was replaced with isAnytypeParam function.
2022-08-01 14:51:54 +02:00
antlilja
cd8070f94f
Removed param_names from Fn inside Module.zig
...
Removed the copy of param_names inside of Fn and changed to
implementation of getParamName to fetch to parameter name from the ZIR.
The signature of getParamName was also changed to take an additional
*Module argument.
2022-08-01 14:51:50 +02:00