New Language Features
#+feature dynamic-literals
- All dynamic literals (maps and dynamic arrays) are disallowed by default to remove implicit allocations from Odin
- If the user wants to allow this, it can be enabled on a per-file basis by adding the above "build tag"
- Dynamic literals like the following:
[dynamic]int{1, 4, 9, 16}
map[string]int{"Apple" = 759, "Pear" = 128, "Gorilla" = 533}
Compiler Improvements
ensure
/ensure_contextless
- Identical to
assert
/assert_contextless
but is not removed with-disable-assert
- Identical to
- Remove viral
#force_inline
and#force_no_inline
- Declaring a procedure with these tags would previously virally apply them to procedures called inside the subject procedure too, it now just affects the procedure it is applied to
- Fix bug with comparisons with big endian types
- Improve zeroing rules for
resize_dynamic_array
- Add implicit broadcasting for
#simd
arrays map_entry
(Docs)
New Packages
N/A
Package Improvements
- Fixes to
vendor:raylib
- Fixes to foreign imports after update to 5.5
- Allow for custom WASM link libraries
- Allow custom WASM link libraries for
vendor:box2d
- Add
trunc
tocore:math/linalg/glsl
- Improvements to
core:encoding/base32
- Update
vendor:cgltf
to 1.14 - Add xinput bindings to
core:sys/windows
- Fix to matrix adjugate procedure