[This wastes computer and human resources because it takes a lot less time to solve this in bulk. I don't want to merge 1,000 PRs each fixing one word even if those 1,000 PRs are spread among...
@TypeOf and anytype; introduce |T| syntax
[In other scenarios, the scope of
capturedis limited to the next expression following|captured|. If this expression is a block, then the scope is the entire block.](https://codeberg.org/zig...
This is a compile-error if a pointer-to-const *const T is passed as an argument (which previously both free and destroy support).
@bfredl I think the reasoning here would be the same as for the compiler runtime and other subcommands like zig cc, zig libc, zig objcopy etc. being compiled on-demand instead of included in...
As you've found out, @sizeOf returns the backing size in bytes, which the compiler (for the target you've picked) chooses as 4 bytes for u24.
I have not built and tested with the changes, though trivial.
Changing build.zig to specify additional directories as a work around does not work either
I've experienced some runtime errors (I think they were segmentation faults) yielding the wrong stack level (one below where they occured) previously.
if after else is missing
For clarification, I think the compiler currently interprets this as an initializer, as if:
@compileError builtin variadic
The status-quo solution I reach for is the following helper function:
@TypeOf and anytype; introduce |T| syntax
In addition to const tmp: |X| = x; _ = tmp;,
@alignOf for all the types
@Fri3dNstuff Ah, that makes sense, thank you for the clarification!
@alignOf for all the types
In my opinion noreturn-like (uninstantiable) types usually require some kind of special casing:
comptime fields from the language
I personally have used both @call and std.fmt with comptime (fields in the tuple) arguments before, and would be slightly annoyed by their direct removal without replacement.