Commit Graph

16993 Commits

Author SHA1 Message Date
Jeroen van Rijn
38c61e06be Rename GetWorldPointVelocity to Body_GetWorldPointVelocity 2026-03-02 20:15:55 +01:00
Jeroen van Rijn
a4ee06ca75 Merge pull request #6355 from louisnovy/fix-bit_set-parapoly-specialization
Fix bit_set parapoly specialization #6240
2026-03-02 12:59:48 +01:00
Louis Novy
7732a78c08 harden run.bat and add missing test_issue_2395 2026-03-01 21:33:14 -08:00
Louis Novy
1a27af515f add test file 2026-03-01 21:18:30 -08:00
Louis Novy
e3d6fe72f8 fix broken bit_set parapoly specialization #6240 2026-03-01 20:58:43 -08:00
gingerBill
e029cfc279 Merge pull request #6350 from krnowak/krnowak/diverging-semicolon
Fix separating of diverging procedure types from block statements
2026-03-01 22:19:04 +00:00
Jeroen van Rijn
854d5a8db9 Merge pull request #6354 from FrancisTheCat/master
Fix name canonicalization for typed ranges in bit_set (#6353)
2026-03-01 15:55:05 +01:00
Franz
5e009f5e83 Fix name canonicalization for typed ranges in bit_set (#6353) 2026-03-01 15:43:17 +01:00
Jeroen van Rijn
d4718595e8 Merge pull request #6351 from Kelimion/fix-6347
Fix #6347
2026-03-01 15:04:01 +01:00
Jeroen van Rijn
579b2612b1 Fix #6347 2026-03-01 14:54:26 +01:00
Krzesimir Nowak
8bdf82ac8d Fix separating of diverging procedure types from block statements
To avoid creating a procedure literal from a procedure type and a
following block statement, one can insert a semicolon or an empty line
between the two:

    // procedure literals
    p1 :: proc() {…}
    p2 :: proc()
    {…}
    // procedure type followed by a block statement
    p3 :: proc()

    {…}

The empty line as a separator did not work if the procedure type had a
diverging result:

    // all of these are procedure literals
    p4 :: proc() -> ! {…}
    p5 :: proc() -> !
    {…}
    p6 :: proc() -> !

    {…}

The least annoying fix I came up with is to insert implicit semicolon
after the "not" token. I only needed to make sure that the inserted
implicit semicolon is being skipped when the "not" token is a part of
unary expression to avoid breaking an oddly-formatted code like:

    b := get_some_bool()
    if !
       b {…}

One small side-effect of this change is that in code like below:

    Proc_Type :: proc() -> !

    // Some comment
    Some_Other_Type :: enum byte {…}

The "// Some comment" is not associated with "Proc_Type" anymore. In
Odin's standard library this only happens in one place, in
`base/runtime/core.odin`:

    Assertion_Failure_Proc :: #type proc(prefix, message: string, loc: Source_Code_Location) -> !

    // Allocation Stuff
    Allocator_Mode :: enum byte {
    	Alloc,
    	…,
    }
2026-03-01 14:49:24 +01:00
gingerBill
e8ca4a24fa Add assert to freelist_push_with_index 2026-03-01 13:28:30 +00:00
gingerBill
7cc68da719 Merge pull request #6342 from fendevel/webgl-additions
webgl: Add bindings, fix `Tex*Image*D`
2026-03-01 13:15:56 +00:00
gingerBill
757bdf0e87 Remove TODO 2026-03-01 13:06:11 +00:00
gingerBill
05a951b338 Fix name lookup 2026-03-01 13:05:51 +00:00
gingerBill
c685c312c5 Make the tokenizer work with a custom hash map protected by a spinlock 2026-03-01 13:00:27 +00:00
Jeroen van Rijn
5eb7442c92 Merge pull request #6345 from leecommamichael/stb_vorbis_libc
[vendor:stb/vorbis] don't use core:c/libc
2026-02-28 17:37:29 +01:00
Michael Lee
f01fb605bc [vendor:stb/vorbis] don't use core:c/libc 2026-02-28 10:24:00 -06:00
Jeroen van Rijn
a0b9d710f7 Merge pull request #6336 from bplu4t2f/master
Fix MultiByteToWideChar usage in utf8_to_wstring_buf
2026-02-28 13:16:39 +01:00
bplu4t2f
1e0f5a691c Fix overflow edge cases on 32-bit systems. 2026-02-28 11:39:12 +01:00
Jeroen van Rijn
1d44bef60d Merge pull request #6340 from miningape/fix-substring-not-returning-end-of-range
fix: `strings.substring` not returning end of range
2026-02-28 09:57:05 +01:00
fendevel
eeb7e775f3 webgl: Add bindings, fix Tex*Image*D 2026-02-28 00:37:34 +00:00
miningape
4ec443df9b fix: strings.substring not returning end of range 2026-02-28 00:44:26 +01:00
Laytan Laats
6a6460e824 fix another old os use in when statement 2026-02-27 22:11:11 +01:00
Jeroen van Rijn
3c84305e38 [core:net] Make IPv6 resolution test failure informative instead. 2026-02-27 21:35:36 +01:00
Laytan
90118d6508 Merge pull request #6337 from andzdroid/patch-2
nbio: fix op re-use
2026-02-27 21:18:31 +01:00
Laytan Laats
f61a216c9f nbio: put clearing of list nodes in proper place and simplify test 2026-02-27 21:04:43 +01:00
bplu4t2f
9883e4ec29 Handle edge cases: Allocation error, extremely long input 2026-02-27 19:16:34 +01:00
Jeroen van Rijn
c63e310359 Merge pull request #6338 from brunodeangelis/brda/cursors-bindings
add bindings to allow custom hardware cursors
2026-02-27 14:12:26 +01:00
Bruno
e65dcd64b8 add bindings to allow custom cursors 2026-02-27 09:54:26 -03:00
bplu4t2f
fa3441936c Fix utf8_to_utf16_alloc edge case, and improve utf8_to_* documentation 2026-02-26 20:52:00 +01:00
bplu4t2f
1c09a2be55 Add tests for utf8_to_utf16_alloc, utf8_to_wstring_alloc 2026-02-26 20:49:36 +01:00
bplu4t2f
e75d0694ba win32 utf8_to_utf16_buf now null-terminates because _alloc did too. utf8_to_utf16_alloc no longer truncates trailing zero characters. utf8_to_wstring adjusted accordingly, including edge cases. 2026-02-26 18:14:34 +01:00
bplu4t2f
572bebd031 Add tests for win32 string conversion functions 2026-02-26 18:11:48 +01:00
Jeroen van Rijn
275ffa1a0e Update SDL3 libs 2026-02-26 14:12:30 +01:00
Jeroen van Rijn
ab9925c991 Merge pull request #6325 from nowhereware/master
Update SDL3 to 3.4.2
2026-02-26 14:11:04 +01:00
Jeroen van Rijn
ffcaa3830c Update miniaudio.lib 2026-02-26 13:44:14 +01:00
andzdroid
334a554de3 nbio: fix op re-use 2026-02-26 00:31:12 +00:00
bplu4t2f
730f417ecb Fix MultiByteToWideChar usage in utf8_to_wstring_buf 2026-02-25 23:02:14 +01:00
Faker-09
61d53212dd Handle map iterator reset for reuse + fix example (#6335)
* Reset the handle_map iterators for reuse
* Make the handle_map example more compilable
2026-02-25 21:41:00 +01:00
Laytan
bdcb9e3fef Merge pull request #6334 from laytan/miniaudio-0.11.24
Miniaudio 0.11.24
2026-02-25 20:17:44 +01:00
Laytan Laats
8bb8344ad6 xar: fix freelist_push_with_index using freelist_index_of which doesn't exist 2026-02-25 19:01:30 +01:00
laytan
4ce6b7653f vendor/miniaudio: update .lib to 0.11.24 and use LFS 2026-02-25 18:53:08 +01:00
Laytan Laats
60c3898a13 vendor/miniaudio: update to 0.11.24 2026-02-25 19:40:28 +01:00
Jeroen van Rijn
a7b2471a26 Update handle_map doc string 2026-02-25 17:33:33 +01:00
Jeroen van Rijn
2a9c5fd5e1 Merge pull request #6332 from Faker-09/bufio_remove_mem_depend
Remove core:mem import from core:bufio
2026-02-25 16:06:52 +01:00
Shane Shrybman
2a56a943d2 core:bufio remove core:mem dependency 2026-02-25 09:17:48 -05:00
Jeroen van Rijn
68cd96bdbf Merge pull request #6331 from GPotoshin/regex-fix-word-boundary-logic-sibling-bug
[core:text/regex] Follow up to fix #6323 and a test case
2026-02-25 15:04:25 +01:00
George Potoshin
5335bdbe34 [core:text/regex] Follow up to fix #6323 and add test case. As was said in the issue discussion I had suspicion that there may be a sibling bug in .Assert_Non_Word_Boundary implementation and I was able to confirm that with re.findall(rB", ") python code. Odin implementation outputed an empty string wherase python gave "'". That is the same bug related to incorrect logic on string ends. This commit makes implementation of those 2 instructions cleaner and adds a test case. 2026-02-25 14:33:09 +01:00
Jeroen van Rijn
3bcddb43c7 missing , 2026-02-25 10:55:30 +01:00