Commit Graph

6232 Commits

Author SHA1 Message Date
jakubtomsu
15f4301afb Merge branch 'odin-lang:master' into target-feature-fix 2026-04-10 13:28:46 +02:00
jakubtomsu
10c7b134e1 de-duplicate and canonicalize target_features_set entries 2026-04-10 13:27:42 +02:00
jakubtomsu
00874e39ad fix 2026-04-10 12:53:28 +02:00
jakubtomsu
bf4aa9b556 stronger +/- checks in check_target_feature_is_enabled 2026-04-10 12:47:12 +02:00
Franz Hoeltermann
f43b604eb3 Fix #no_bounds_check (previously broken by fc41e4414)
arr[:end] expressions would previously emit bounds checks even
with #no_bounds_check, breaking spall
2026-04-10 02:21:36 +02:00
Montgomery
56a1a81a38 Fix output of filename when outputting docs with the -in-source-order option. 2026-04-08 12:49:51 +01:00
gingerBill
68942ce53d Genericize simd_approx_recip_(sqrt) to allow for AVX and AVX512 intrinsics if enabled 2026-04-08 10:56:52 +01:00
gingerBill
6f7226e692 Add intrinsics.simd_pairwise_(add|sub) 2026-04-07 15:45:50 +01:00
gingerBill
6e09ce9a04 intrinsics.to_bits_signed; simd.signbit 2026-04-07 15:25:41 +01:00
gingerBill
5de18d30f3 Add intrinsics.simd_approx_recip and intrinsics.simd_approx_recip_sqrt 2026-04-07 14:35:04 +01:00
gingerBill
885db93e20 Add intrinsics.simd_sums_of_n 2026-04-07 13:18:03 +01:00
gingerBill
30b6fab120 Fix simd.scatter/simd.gather for LLVM 22 2026-04-07 11:46:57 +01:00
gingerBill
ac1b5aea0f Add intrinsics.simd_odd_even; More core:simd operations 2026-04-07 11:35:20 +01:00
gingerBill
4dd884bba2 Merge pull request #6511 from lucypero/opt-default-docs
Add -debug default behavior usage docs
2026-04-04 14:03:02 +01:00
Lucy
7313e6708d add -o docs to usage 2026-04-02 12:17:38 -03:00
gingerBill
a896fb2b4c Merge pull request #6507 from LeandroLibanio28H/fixing-declaration-order-bugs
Fixing declaration order bugs
2026-04-02 14:32:02 +01:00
Leandro Libanio
8d63c1bbff publish partial struct fields during struct field checking
Fixes: #6506
2026-04-01 13:34:04 -03:00
Leandro Libanio
c8cd8dd2db allow in-progress union variants when validating union members
Fixes: #5961
2026-04-01 12:39:48 -03:00
gingerBill
69606e4e22 Compiler arena_alloc_array utility procedure 2026-03-30 13:15:41 +01:00
gingerBill
52701390ce Remove dead code in filename_from_path 2026-03-30 11:52:08 +01:00
gingerBill
4dceffd049 When parsing an incorrect for loop, remove assert
// caused by this:
```
for a
b, c := d()
```
2026-03-30 11:50:59 +01:00
mtarik34b
7de688d893 Use int instead of u64 2026-03-28 02:50:05 +01:00
mtarik34b
2640a18296 Undo rename of cmp_entities_for_printing 2026-03-28 02:26:56 +01:00
mtarik34b
ac17852f36 Add option to show docs in source order within each file 2026-03-28 02:26:39 +01:00
gingerBill
44bf8ba464 Support odin doc core:os style paths 2026-03-27 17:43:06 +00:00
Harold Brenes
e11bbdaa37 Fix issue where 2 when statements which eval to true
in a `foreign` block cause the rest of the statements on
the block to go unchecked
2026-03-26 19:53:59 -04:00
gingerBill
25c10c18cc Remove tilde backend 2026-03-26 11:49:39 +00:00
gingerBill
4697c8837c Merge pull request #6479 from cuiweixie/fix/llvm-cstring16-u16-multi-ptr-transmute
Fix u16 multi-pointer to cstring16 transmute condition in lb_emit_conv
2026-03-26 11:16:49 +00:00
gingerBill
e0f348bf06 Merge pull request #6478 from cuiweixie/fix/llvm-panic-subtype-cast-format
Fix GB_PANIC format string in lb_emit_conv invalid subtype cast
2026-03-26 11:16:20 +00:00
Weixie Cui
4e87f47fe3 Fix >= comparison runtime dependencies for string and cstring types
Token_GtEq incorrectly added *_gt runtime symbols for cstring, cstring16,
string16, and string comparisons; use the correct *_ge dependencies instead.
2026-03-26 18:21:27 +08:00
Weixie Cui
b16eaea8a8 Fix u16 multi-pointer to cstring16 transmute condition in lb_emit_conv
cstring16 uses UTF-16 code units; accept u16 multi-pointers, not u8.
2026-03-26 17:57:18 +08:00
Weixie Cui
a2f1aafed3 Fix GB_PANIC format string in lb_emit_conv invalid subtype cast
The panic string passed two type names but only had one %s placeholder.
2026-03-26 17:54:17 +08:00
gingerBill
0fce2da442 Add suggestion when trying to slice an enumerated array 2026-03-25 15:03:37 +00:00
gingerBill
e10257f86a Fix slicing logic of a FCD array to check if it can be sliced or not 2026-03-25 14:11:22 +00:00
gingerBill
59eaa13625 Fix indexing logic of FCD arrays 2026-03-25 14:10:08 +00:00
gingerBill
e6d7ccad2c Merge branch 'master' of https://github.com/odin-lang/Odin 2026-03-25 14:08:48 +00:00
gingerBill
a9e81e01aa Allow addressing of an index expression of an soa slice/dynamic array 2026-03-25 14:08:39 +00:00
gingerBill
e3d4d44ad9 Merge pull request #6413 from Znarf64/master
Fix #6407
2026-03-25 12:04:12 +00:00
gingerBill
b178e39f80 Improve error message when trying to pass a parapoly type to value parameter 2026-03-25 11:33:05 +00:00
gingerBill
85eeca2f03 Add missing generic #soa pointers to parapoly handling system 2026-03-25 10:15:58 +00:00
gingerBill
7fbabb491b Merge pull request #6466 from jakubtomsu/bit-field-intrin
Bit field intrinsics and fixes
2026-03-25 09:55:28 +00:00
Harold Brenes
4f6caf19f0 Ensure checking for proc property equality before checking param assignability 2026-03-23 21:15:12 -04:00
Harold Brenes
147542b5cc Allow pointers to types which have subtype fields at offset 0
to be assignable in proc parameters.

```odin
// Virtual interface
IFoo :: struct {
	foo: proc( self: ^IFoo ),
}

// Implements IFoo interface
Foo :: struct {
	using vt: IFoo,
	name: string,
}

// Implement interface via `Foo`
Foo_Impl :: IFoo {
	// `self` of type `^Foo` (not `^IFoo`) is now accepted as a valid parameter.
	foo = proc( self: ^Foo ) {
		...
	},
}
```
2026-03-23 20:55:44 -04:00
jakubtomsu
b1d9db7b15 make offset_of(Bit_Field, ...) an error, typo fix 2026-03-23 16:43:11 +01:00
jakubtomsu
a097f3c938 add type_field_bit_offset/size intrinsics 2026-03-23 16:42:30 +01:00
gingerBill
111bee6ecd Fix scope->elements iteration causing a few bugs in the doc-format 2026-03-19 20:31:01 +00:00
gingerBill
3fb430ceb7 Merge branch 'master' of https://github.com/odin-lang/Odin 2026-03-19 18:50:17 +00:00
gingerBill
e6521ed269 Inline the generic count stuff 2026-03-19 18:50:01 +00:00
Jeroen van Rijn
ea1d97f703 Merge pull request #6448 from SpaceTravelCompany/master
fixes Android build
2026-03-19 19:45:33 +01:00
Jeroen van Rijn
c29fd7f872 Merge pull request #6436 from nathanchere/patch-1
Update build_odin.sh to support LLVM 22
2026-03-19 19:18:31 +01:00