Skip to content

dev-2025-01

Latest
Compare
Choose a tag to compare
@gingerBill gingerBill released this 08 Jan 19:13
· 41 commits to master since this release

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
  • 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 to core: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