Commit Graph

18692 Commits

Author SHA1 Message Date
Jeroen van Rijn
6b661becae Merge pull request #7375 from thetarnav/remove-inline-keywords-core-odin
Remove `inline` and `no_inline` keywords from `core:odin`
2026-08-18 19:03:00 +02:00
thetarnav
f1bbd8fe49 Remove inline and no_inline keywords from core:odin
Odin uses `#force_inline` and `#force_no_inline` directives, not
keywords.
The cpp parser does not define them as keywords:
/home/thetarnav/Projects/odin/src/tokenizer.cpp:86
Nor does the grammar spec: https://odin-lang.org/spec/grammar/#keywords
2026-08-18 18:25:22 +02:00
Jeroen van Rijn
a75be8e9a5 Merge pull request #7374 from nickav/nickav/fix-windows-file-notify-casing
fix FILE_NOTIFY_INFORMATION struct member casing
2026-08-18 18:10:15 +02:00
Nick Aversano
54b818e9a7 fix FILE_NOTIFY_INFORMATION struct member casing 2026-08-18 11:19:10 -04:00
gingerBill
87097641e3 Merge pull request #7372 from kalsprite/abs_constant_range
check_builtin: range-check the constant `abs` folds
2026-08-18 12:05:28 +02:00
gingerBill
b1042f6806 Merge pull request #7371 from kalsprite/bedrock_map_guard
checker: do not register map runtime dependencies under bedrock
2026-08-18 11:56:15 +02:00
gingerBill
9a98b080ca Merge pull request #7369 from kalsprite/bare_builtin_as_value
check_stmt: reject a built-in procedure assigned to
2026-08-18 11:54:55 +02:00
gingerBill
420c1cb2f2 Merge pull request #7368 from kalsprite/riscv_coerce_offsets_slice
riscv64: use a Slice for the coerce offsets + missed arm in riscv ABI
2026-08-18 11:54:39 +02:00
kalsprite
8189bb9730 abs const fold 2026-08-17 22:41:22 -07:00
kalsprite
0ef3d96724 fix reinterpretation on riscv 2026-08-17 21:53:37 -07:00
kalsprite
71d8e79806 checker: do not register map runtime dependencies under 2026-08-17 20:22:25 -07:00
kalsprite
364a76e8e9 check_stmt: reject a built-in procedure assigned to 2026-08-17 19:08:13 -07:00
Jeroen van Rijn
0be39571f6 Merge pull request #7367 from kalsprite/c_vararg_diagnostics
c_vararg: fix c_va_start guard and c_va_arg format mismatch
2026-08-18 03:57:34 +02:00
kalsprite
c6fcad51f8 riscv64: use a Slice for the coerce offsets 2026-08-17 18:54:58 -07:00
kalsprite
c34ae95e8a c_va_start: test the operand it just checked; c_va_arg: drop the unfed verb 2026-08-17 18:34:09 -07:00
Jeroen van Rijn
ffbaafd39c Merge pull request #7366 from Kelimion/fix-7365
Fix #7365
2026-08-18 02:04:53 +02:00
Jeroen van Rijn
7140c5bccb Fix #7365
Fixes #7365
2026-08-18 01:53:55 +02:00
gingerBill
8636070fc9 Merge pull request #7364 from Ruan-pysoft/master
Fix slice.simple_equal misbehaviour on empty slice with non-nil data
2026-08-17 23:36:51 +02:00
Ruan
ad8cfbeb73 Fix slice.simple_equal misbehaviour on empty slice with non-nil data
Before this change, the following code:

```odin
package strconcat

import "core:fmt"
import "core:slice"

main :: proc() {
	a: [1]u8
	s1: []u8 = {}
	s2: []u8 = a[:0]

	fmt.printfln("s1={} len(s1)={} raw_data(s1)={}", s1, len(s1), raw_data(s1))
	fmt.printfln("s2={} len(s2)={} raw_data(s2)={}", s2, len(s2), raw_data(s2))
	fmt.printfln("equal(s1, s2):        {}", slice.equal(s1, s2))
	fmt.printfln("simple_equal(s1, s2): {}", slice.simple_equal(s1, s2))
}
```

Produced the following output on my machine:

```
s1=[] len(s1)=0 raw_data(s1)=<nil>
s2=[] len(s2)=0 raw_data(s2)=0x7FFFED64F74F
equal(s1, s2):        true
simple_equal(s1, s2): false
```

This commit fixes simple_equal's behaviour to match that of equal.
2026-08-17 22:38:40 +02:00
Jeroen van Rijn
ad17496e4a Merge pull request #7363 from PavLL/fix-wrong-bounds-check-directive
core/slice/slice.odin: fix slice.get doing unnecessary bounds check
2026-08-17 19:04:01 +02:00
pav
2c7b3e6780 fix slice.get doing unnecessary bounds check 2026-08-17 18:40:12 +02:00
gingerBill
645b57be9f Merge pull request #7327 from kalsprite/abi_conformance
ABI Conformance Harness + Fixes
2026-08-17 16:28:01 +02:00
Jeroen van Rijn
a0b475eef9 Merge pull request #7361 from ssenthilnathan3/fix/recursive-soa-sigbus
Fix: SIGBUS/segfault when compiling recursive #soa slice/dynamic array types
2026-08-17 13:16:18 +02:00
Jeroen van Rijn
e2f1638d4d Merge pull request #7353 from corleypc/modmod-fix
Fixes the %% operator
2026-08-17 13:06:53 +02:00
gingerBill
8eaa640c02 Merge pull request #7358 from kalsprite/eol_diagnostic_line
fix eol diagnostic
2026-08-17 12:41:41 +02:00
Jeroen van Rijn
ee89002c24 Add more %% tests 2026-08-17 12:40:49 +02:00
gingerBill
a03d5addfa Merge pull request #7334 from kalsprite/riscv64_arg_coerce
riscv64: read a flattened aggregate's members from their real offsets
2026-08-17 12:40:36 +02:00
gingerBill
bfc945f991 Merge pull request #7355 from samuelgozi/dynamic-arena-reused-block-alignment
mem: Keep Dynamic_Arena allocations aligned after reset
2026-08-17 12:40:14 +02:00
gingerBill
b5a746b9b6 Merge pull request #7359 from kalsprite/min_dep_fixed_capacity_break
checker: add the missing `break` in `add_min_dep_type_info`
2026-08-17 12:39:27 +02:00
gingerBill
2791257e28 Merge pull request #7360 from kalsprite/any_int_range_check
check_expr: range-check a constant passed to an `#any_int` parameter
2026-08-17 12:39:16 +02:00
gingerBill
d3f4d477e5 Merge pull request #7348 from Kelimion/ci-flakiness
Disable Wycheproof on Windows CI
2026-08-17 12:35:19 +02:00
gingerBill
307604381a Merge pull request #7333 from corleypc/constmerge-fix
Reenables LLVMSetUnnamedAddress for global constants merging
2026-08-17 12:33:39 +02:00
Senthilnathan
f6f686392a Merge branch 'master' into fix/recursive-soa-sigbus 2026-08-17 12:53:33 +05:30
Senthilnathan
4fe5719007 Fix SIGBUS/segfault when compiling recursive #soa slice/dynamic array types 2026-08-17 12:48:41 +05:30
kalsprite
72d1829fec #any_int range check constants 2026-08-16 22:08:52 -07:00
kalsprite
55d0aecd92 add missing break on fix dyn 2026-08-16 19:51:27 -07:00
kalsprite
35061af11b fix eol diagnostic 2026-08-16 17:31:59 -07:00
Samuel Elgozi
4a08f5c48a mem: Preserve alignment when reusing Dynamic_Arena blocks 2026-08-17 00:21:50 +03:00
Mihail Moskov
e92c04eb73 Fixes the %% operator 2026-08-16 23:08:24 +03:00
Jeroen van Rijn
35779c6fa7 Merge pull request #7352 from Kelimion/fix-#7350
Fix #7350
2026-08-16 18:24:39 +02:00
Jeroen van Rijn
a9b7d3dfc6 Fix #7350 2026-08-16 18:08:17 +02:00
Jeroen van Rijn
ca8b7c16b8 Merge pull request #7351 from Kelimion/compiler-utf8-codepage
Set console codepage to utf-8 (on Windows), and restore old one on exit
2026-08-16 18:06:39 +02:00
Jeroen van Rijn
c63561b700 Also restore codepage on trap. 2026-08-16 17:50:49 +02:00
Jeroen van Rijn
7f532cad14 Add -define:ODIN_CODEPAGE_MAGIC=false opt-out to the runtime 2026-08-16 17:01:41 +02:00
Jeroen van Rijn
0b7b8ba4a2 Set console codepage to utf-8 (on Windows), and restore old one on exit
Avoid mojibake.
2026-08-16 16:16:35 +02:00
Jeroen van Rijn
cc7d6764d3 Merge pull request #7349 from TheRadischen/merge_sort
improved stable sort | from insertion_sort to merge_rotate
2026-08-16 16:03:57 +02:00
TheRadischen
7d9367e3b4 morestyle improvements mybe this is it? 2026-08-16 15:24:55 +02:00
TheRadischen
0b0778f981 morestyle improvements mybe this is it? 2026-08-16 15:24:19 +02:00
TheRadischen
f6b8eafdfd imporved_style 2026-08-16 15:10:01 +02:00
TheRadischen
1a70315797 style_corrections 2026-08-16 15:09:12 +02:00