| Age | Commit message (Collapse) | Author |
|
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
|
|
See #357
|
|
closes #314
|
|
|
|
closes #272
|
|
* `noreturn` is the primitive type.
* `unreachable` is a control flow keyword.
* `@unreachable()` builtin function is deleted.
closes #214
|
|
* remove setFnTest builtin
* add test "name" { ... } syntax
* remove --check-unused argument. functions are always lazy now.
|
|
See #258
|
|
closes #183
|
|
See #83
|
|
See #221
|
|
closes #222
|
|
* add `setFnTest`, `setFnVisible`, `setFnStaticEval`,
`setFnNoInline` builtin functions to replace previous
directive functionality
* add `coldcc` and `nakedcc` as keywords which can be used as part
of a function prototype.
* `setDebugSafety` builtin can be used to set debug safety features
at a per block scope level.
* closes #169
|
|
See #169
|
|
protect against incorrect copies in debug mode
|
|
|
|
closes #177
|
|
|
|
|
|
This patch also moves a bunch of the parser code into the tokenizer.
Closes #162.
|
|
closes #161
|
|
instead of wrapping integer types
closes #159
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
and make multiple lines in normal string literals an error
|
|
* Introduce the concept of packages. Closes #3
* Add support for error notes.
* Introduce `@import` and `@c_import` builtin functions and
remove the `import` and `c_import` top level declarations.
* Introduce the `use` top level declaration.
* Add `--check-unused` parameter to perform semantic
analysis and codegen on all top level declarations, not
just exported ones and ones referenced by exported ones.
* Delete the root export node and add `--library` argument.
|
|
* disable goto and label support see #44
* refactor the way block contexts work
|
|
|
|
See #88
Also, includes partial implementation of typedef top level declaration.
See #95
Also, fix function types. Previously the way we were deduping function type
pointers was incorrect.
|