dev-2022-04
版本发布时间: 2022-04-05 04:57:43
odin-lang/Odin最新发布版本:dev-2024-09(2024-09-02 23:33:25)
New Language Features
- None
New Compiler Features
- Rework of the entire atomic intrinsics (similar to C11 in design)
-
Atomic_Memory_Order
enum -
atomic_type_is_lock_free
-
atomic_thread_fence
-
atomic_signal_fence
-
atomic_store
-
atomic_store_explicit
-
atomic_load
-
atomic_load_explicit
-
atomic_add
-
atomic_add_explicit
-
atomic_sub
-
atomic_sub_explicit
-
atomic_and
-
atomic_and_explicit
-
atomic_nand
-
atomic_nand_explicit
-
atomic_or
-
atomic_or_explicit
-
atomic_xor
-
atomic_xor_explicit
-
atomic_exchange
-
atomic_exchange_explicit
-
atomic_compare_exchange_strong
-
atomic_compare_exchange_strong_explicit
-
atomic_compare_exchange_weak
-
atomic_compare_exchange_weak_explicit
-
-
union #shared_nil
- This adds a feature to
union
which requires all the variants to have anil
value and on assign to the union, checks whether that value isnil
or not. If the value isnil
, the union will benil
(thus sharing thenil
value)
- This adds a feature to
- Improved build script for the compiler
- Numerous bug fixes
Compiler Improvements
- Improve
-help
messages for define/config
New Packages
- Completely redesigned
core:sync
- Designed from the ground up with making the zero value useful (no need to initialize nor destroy values)
- Utilizes the abilities of modern OSes with native futex support
- Primitives:
-
Mutex
-
RW_Mutex
-
Recursive_Mutex
-
Cond
-
Sema
-
Futex
-
- Extended:
-
Wait_Group
-
Barrier
-
Auto_Reset_Event
-
Ticket_Mutex
-
Benaphore
-
Recursive_Benaphore
-
Once
-
-
core:math/ease
Package Improvements
- Update Thread Pool in
core:thread
- More additions to
core:sys/windows
- Remove
#caller_location
from certain calls incore:container/small_array
-
vendor:stb/easy_font
fixes/improvements - Update
mem.nil_allocator
to match the same implementation inruntime
- Numerous improvements and additions to
core:strings
- Add
nil
check onast.walk
incore:odin/ast
- Numerous bug fixes
1、 odin-macos_amd64-dev-2022-04.zip 16.17MB
2、 odin-ubuntu_amd64-dev-2022-04.zip 16.08MB
3、 odin-windows_amd64-dev-2022-04.zip 36.62MB