Releases
dev-2022-10
New Language Features
cap(Enum)
, equivalent to max(Enum)-min(Enum)+1
ODIN_BUILD_PROJECT_NAME
constant
//+build-project-name
build directive
intrinsics.type_convert_variants_to_pointers
Add helgrind
and valgrind
support
Compiler Improvements
Greatly improve error messages
Preparations for Compiler Explorer support
Use uint
instead of int
to improve bounds checking code generation
Replace #optional_second
with #optional_allocator_error
Remove extra pointer indirection
Make intrinsics.count_{ones,zeros,trailing_zeros,leading_zeros}
work at compile time
Improve map
Improve parapoly support for ^T to [^]$V and vice versa
Various bugfixes
Simplify win32 resource file linking
Add Windows 32-bit build system error
Add help
command, so you can now use odin help build
in addition to odin build -help
Improve macOS version detection for odin report
New Packages
Add vendor:zlib
Begin work on core:debug/pe
to parse PE files
Add core:sys/info
to query CPU, GPU, RAM, etc.
Package Improvements
Add system:legacy_stdio_definitions.lib to core:c
Allow reading/writing files larger than max(i32)
on Darwin
Allow skipping unused fields in core:encoding/json
Add parsing of +/-Inf and NaN to core:strconv
Add additional win32 imports and constants
Fix typo in map_insert
Fix libc.aligned_alloc
Add slice.enumerated_array
Add serial comms support to core:sys/windows
Add complex support to core:libc
Correct json unmarshal of map
s
Fix Darwin libs for vendor:stb/image
Added support for ID3D11InfoQueue to vendor:directx
Improve core:mem/virtual
handling of out of memory on Windows
Simplify core:io
by removing different unnecessary types and calls
Add the builtin procedures abs
, clamp
, min
, max
to core:math
as aliases
You canβt perform that action at this time.