| Age | Commit message (Collapse) | Author |
|
|
|
|
|
old syntax: []i32{1, 2, 3}
new syntax: [_]i32{1, 2, 3}
closes #1797
|
|
See #2014
`use` syntax is still accepted for now. `zig fmt` automatically
updates code. After a release cycle the old syntax will be removed.
|
|
|
|
|
|
closes #1953
only needed for freestanding targets.
also adds safety for `@intToPtr` when the address is zero.
|
|
also make the documentation for character literals more clear.
closes #2089
see #2097
|
|
closes #2093
This is technically a breaking change but I would be
surprised if anyone was actually using this feature.
|
|
fixes float literals not having 128 bit precision
|
|
|
|
this works now: 0x1.edcb34a235253948765432134674fp-1
|
|
closes #2083
|
|
See #1059
|
|
|
|
Previously, it pointed to the start of the current token, but this made
it difficult to tell where the error occurred when it was, say, in the
middle of a string.
|
|
This accomplishes the same goal, but with less changes, so that
I can backport copy elision stuff easier.
|
|
|
|
add zig fmt support for this syntax
closes #1152
|
|
Reverted #1628 and changed the grammar+parser of the language to not allow certain expr where types are expected
|
|
Make it a little clearer what a SYMBOL_CHAR is, use ALPHA instead of
ALPHA_EXCEPT_C and case 'c', which is ALPHA's definition.
|
|
closes #1283
|
|
|
|
Unblocks #495.
|
|
use the `zig-fmt-optional-default` branch to have zig fmt
automatically do the changes.
closes #1023
|
|
See #1023
This also renames Nullable/Maybe to Optional
|
|
See #770
Currently it does not have any different behavior than `*`
but it is now recommended to use `[*]` for unknown length
pointers to be future-proof.
Instead of [ * ] being separate tokens as the proposal
suggested, this commit implements `[*]` as a single token.
|
|
closes #857
|
|
See #727
|
|
|
|
|
|
See #632
now we have 1 less sigil
|
|
* docgen supports obj_err code kind for demonstrating
errors without explicit test cases
* add documentation for `extern enum`. See #367
* remove coldcc keyword and add @setIsCold. See #661
* add compile errors for non-extern struct, enum, unions
in function signatures
* add .h file generation for extern struct, enum, unions
|
|
See #632
closes #545
closes #510
this makes #651 higher priority
|
|
See #632
better fits the convention of using keywords for control flow
|
|
See #632
better fits the convention of using keywords for control flow
|
|
|
|
|
|
See #544
|
|
|
|
Closes #499.
|
|
|
|
|
|
* remove `@setGlobalAlign`
* add align keyword for setting alignment on functions and
variables.
* loads and stores use alignment from pointer
* memcpy, memset use alignment from pointer
* add syntax for pointer alignment
* slices can have volatile
* add u2, i2 primitives
* ignore preferred align and use abi align everywhere
* back to only having alignOf builtin.
preferredAlignOf is too tricky to be useful.
See #432. Partial revert of
e726925e802eddab53cbfd9aacbc5eefe95c356f.
See #37
|
|
previously we used the bigfloat abstraction to do all
compile-time float math. but runtime code and comptime code
are supposed to get the same result. so now if you add a
f32 to a f32 at compile time it does it with f32 math
instead of the bigfloat. float literals still get the
bigfloat math.
closes #424
|
|
Before:
* << is left shift, not allowed to shift 1 bits out
* <<% is left shift, allowed to shift 1 bits out
* >> is right shift, allowed to shift 1 bits out
After:
* << is left shift, allowed to shift 1 bits out
* >> is right shift, allowed to shift 1 bits out
* @shlExact is left shift, not allowed to shift 1 bits out
* @shrExact is right shift, not allowed to shift 1 bits out
Closes #413
|
|
The exponent range for floating-point values is [-1022, 1023].
Fixes #399.
|
|
|
|
|
|
See #359
|