Commit Graph
100 Commits
Author SHA1 Message Date
Jeroen van RijnandGitHub 1ea166fb97 Merge pull request #5251 from Feoramund/fix-quat-real-real-real-real
Fix a couple `quaternion` bugs
2025-06-01 20:52:46 +02:00
Jeroen van Rijn 805f7ce973 Typo fix 2025-06-01 19:22:51 +02:00
Jeroen van Rijn 405bf7cd55 Also clean up .dSym on Darwin 2025-06-01 15:59:38 +02:00
Jeroen van Rijn 349a34cb1a Also delete .pdb unless -keep-executable is supplied 2025-06-01 13:37:26 +02:00
Jeroen van RijnandGitHub 074708ddc4 Merge pull request #5250 from mstura/master
Add missing return cast in 'memory_prefix_length' on amd64 avx2
2025-06-01 12:20:19 +02:00
Jeroen van RijnandGitHub c80f3db3a6 Merge pull request #5249 from Kelimion/simd_prefix
Vectorize `strings.prefix_length`.
2025-05-31 20:42:15 +02:00
Jeroen van Rijn c705756389 Fix doctest 2025-05-31 20:35:25 +02:00
Jeroen van Rijn a0f0e9e778 -vet 2025-05-31 20:30:02 +02:00
Jeroen van Rijn 890e923051 Vectorize strings.prefix_length.
Also add `strings.common_prefix`.
2025-05-31 20:24:21 +02:00
Jeroen van RijnandGitHub aedbb0bdb3 Merge pull request #5247 from Feoramund/fix-2083
Add suggestions for `quaternionN` or `complexN` conversions
2025-05-31 14:05:17 +02:00
Jeroen van RijnandGitHub 843648c817 Merge pull request #5236 from Feoramund/fix-2077
Error on unterminated multi-line comment
2025-05-30 00:37:36 +02:00
Jeroen van RijnandGitHub 3142aaf497 Merge pull request #4063 from Feoramund/simd-memory
Vectorize `base:runtime.memory_*`
2025-05-29 23:32:19 +02:00
Jeroen van Rijn 0d0f311df1 Always provide /PDB option to linker if generating debug info.
radlink by default places the .PDB file in the working directory, even if /OUT says to place it elsewhere,
unlike link.exe, which places it next to the executable by default.

So, if compiling using -debug, we generate a PDB path even if -pdb-name wasn't used to override it.
2025-05-29 19:02:46 +02:00
Jeroen van Rijn 8597966a9f Fix rand.int_max comment 2025-05-28 11:50:24 +02:00
Jeroen van RijnandGitHub 2f2561a745 Merge pull request #5226 from weskerfoot/fix-csv-docs
Fix incorrect CSV reader settings for example, fix typo in docs
2025-05-27 22:52:29 +02:00
Jeroen van Rijn db5c45602d Remove outdated optimization attributes. 2025-05-27 17:57:06 +02:00
Jeroen van RijnandGitHub f0061a77c0 Merge pull request #5224 from Kelimion/ptr_sub
ptr_sub prose clarification
2025-05-27 04:42:33 +02:00
Jeroen van Rijn 0d55764aa7 int 2025-05-27 04:42:12 +02:00
Jeroen van Rijn c513f035ad Fix example 2025-05-27 04:33:22 +02:00
Jeroen van Rijn 624c176ef3 ptr_sub prose clarification 2025-05-27 04:28:56 +02:00
Jeroen van RijnandGitHub d6ec081723 Merge pull request #5223 from Badaxis/GameInput
GameInput fixes and tweaks
2025-05-26 23:00:24 +02:00
Jeroen van RijnandGitHub 34edcf49ab Merge pull request #5222 from Badaxis/badaxis/Windows-Audio&Winmm
MAKEFOURCC: changed BYTE to byte
2025-05-26 22:56:00 +02:00
Jeroen van Rijn 4d3593afc9 Update rlgl.LoadFramebuffer signature to match raylib 5.5 change 2025-05-26 21:50:13 +02:00
Jeroen van RijnandGitHub cb9d2d00e3 Merge pull request #5221 from Badaxis/badaxis/XAudio2
Create() rework; comments tweaks; +hrtfapoapi
2025-05-26 21:39:39 +02:00
Jeroen van RijnandGitHub d156c2663a Merge pull request #5220 from Feoramund/fix-multiline-regex
Fix multiline RegEx iteration (breaking change for `.Multiline` usage)
2025-05-26 21:24:02 +02:00
Jeroen van Rijn ee132b39d4 Clarify optimization mode affecting use-separate-modules 2025-05-26 20:50:43 +02:00
Jeroen van Rijn 0f0d69ea4c Clarify Darwin minimum OS version 2025-05-26 20:38:04 +02:00
Jeroen van Rijn 725cc53c65 Typo 2025-05-26 20:29:49 +02:00
Jeroen van RijnandGitHub 229c734820 Add comments to builtin.odin, documenting ODIN_* constants. (#5218)
And document constants not previously listed.
2025-05-26 18:58:59 +02:00
Jeroen van RijnandGitHub 655fab7227 Add core/hyperthread count for Windows and Linux (#5216)
Add core/hyperthread count to `core:sys/info` for Windows and Linux.
TODO: Linux RISCV, Linux ARM, Darwin, and the BSDs.
2025-05-25 19:43:10 +02:00
Jeroen van RijnandGitHub 0a6dced9da Merge pull request #5210 from Barinzaya/core-math-big-range-check
Fix range check in `core:math/big`'s `int_atoi`
2025-05-24 17:43:00 +02:00
Jeroen van RijnandGitHub 142dd58b27 Merge pull request #5209 from Feoramund/regex-fixes
Fix RegEx iterator, remove `.Global`, make patterns unanchored by default (breaking change)
2025-05-24 15:38:26 +02:00
Jeroen van Rijn 8b657379f3 Typo fix 2025-05-23 17:07:08 +02:00
Jeroen van Rijn 3d60b219c1 Allow text/scanner to scan 0h hex floats 2025-05-23 14:02:49 +02:00
Jeroen van RijnandGitHub 7ad8f21e79 Merge pull request #5205 from HeHHeyboi/signature-fix
Correct RWwrite signature in vendor:sdl2
2025-05-23 11:35:38 +02:00
Jeroen van Rijn 84b140f963 Rename -keep-test-executable to -keep-executable 2025-05-23 08:47:48 +02:00
Jeroen van Rijn f716d4c88f your your 2025-05-23 08:32:16 +02:00
Jeroen van Rijn 12167bace0 Tweak #5202
Back out the new `-build-only` for tests in favor of the more established `-build-mode:test`, but retain the new `-keep-test-executable` option and default cleanup of test executables.
2025-05-23 08:28:27 +02:00
Jeroen van RijnandGitHub 149c563146 Merge pull request #5204 from Feoramund/freebsd-sanitizer
Enable all sanitizers on FreeBSD
2025-05-23 07:19:30 +02:00
Jeroen van RijnandGitHub 82c9681e28 Merge pull request #5202 from Feoramund/fix-2035
Add `-build-only`, `-keep-test-executable`, delete test executable after running
2025-05-23 00:13:36 +02:00
Jeroen van RijnandGitHub 9421b77eb5 Merge pull request #5198 from Feoramund/fix-2807
Only trim `.odin` from build filenames
2025-05-22 15:01:35 +02:00
Jeroen van Rijn f8bbeb54d4 Slight tweak. 2025-05-21 20:28:21 +02:00
Jeroen van Rijn c32b7ba593 List -subtarget in odin help build 2025-05-21 20:24:27 +02:00
Jeroen van Rijn 95183e4b9c Remove now unnecessary checks. 2025-05-21 19:37:09 +02:00
Jeroen van RijnandGitHub bd4134382b Merge pull request #5195 from Kelimion/fix-5177
Fix #5177
2025-05-21 19:28:38 +02:00
Jeroen van Rijn 96fd07e0ee Fix #5177 - Tweak error messages. 2025-05-21 19:20:58 +02:00
Jeroen van RijnandGitHub a2c0720fb0 Merge pull request #5194 from Feoramund/fix-5067
Fix off-by-one error in `priority_queue.remove`
2025-05-21 16:21:14 +02:00
Jeroen van RijnandGitHub 96bbd944dc Merge pull request #5193 from Feoramund/compliant-win32-terminal
Also use `ENABLE_PROCESSED_OUTPUT` on Windows terminals
2025-05-21 14:50:48 +02:00
Jeroen van RijnandGitHub f65e418dc9 Merge pull request #5189 from Feoramund/fix-ansi-log-terminal
Add `core:terminal`, fix test runner/`core:log` ANSI code issues
2025-05-21 14:20:18 +02:00
Jeroen van RijnandGitHub 4329f50d26 Merge pull request #5188 from deadwanderer/master
[vendor:directx/d3d12] Fix RESOURCE_STATE_ALL_SHADER_RESOURCE flags and add new HEAP_TYPE
2025-05-20 22:55:06 +02:00
Jeroen van RijnandGitHub 714066d91b Merge pull request #5186 from Kelimion/restore-cursor
Restore console mode when test runner exits.
2025-05-20 17:06:14 +02:00
Jeroen van Rijn 8bffd247b7 Restore console mode when test runner exits. 2025-05-20 16:51:24 +02:00
Jeroen van RijnandGitHub 50fcbb1058 Merge pull request #5183 from Feoramund/fix-5083
Do not call disabled deferred procedures
2025-05-20 02:58:38 +02:00
Jeroen van RijnandGitHub 91d6e5372c Merge pull request #5182 from Kelimion/dynamic-literals
-dynamic-literals
2025-05-19 20:53:23 +02:00
Jeroen van Rijn ab95932502 -dynamic-literals 2025-05-19 20:44:27 +02:00
Jeroen van RijnandGitHub b7783cac05 Merge pull request #5181 from Feoramund/fix-5167
Make `odin help` more precise
2025-05-19 15:38:09 +02:00
Jeroen van Rijn 558eca8c7a Merge branch 'master' of github.com:odin-lang/Odin 2025-05-18 15:08:21 +02:00
Jeroen van Rijn 1b13152286 Change XAudio2 DLL search flags to DEFAULT_DIRS 2025-05-18 15:08:10 +02:00
Jeroen van Rijn d6210ae76f Fix -vet complaints in core:sys/darwin/Foundation 2025-05-17 16:36:10 +02:00
Jeroen van Rijn 7c80df4830 @(init), @(fini) and @(export) procedures are classified as used.
For the purposes of `-vet-unused-procedures`, exported procedures and `@(init)` and `@(fini)` are now disregarded.
2025-05-17 16:22:47 +02:00
Jeroen van Rijn 25c935c305 Re-enable demo on *nix 2025-05-13 18:46:55 +02:00
Jeroen van RijnandGitHub 1a58476c03 Merge pull request #5155 from Kelimion/date_from_git
Parse odin version date out of HEAD commit if available
2025-05-13 18:45:16 +02:00
Jeroen van Rijn ed56a7ca10 Parse odin version date out of HEAD commit if available 2025-05-13 18:09:30 +02:00
Jeroen van RijnandGitHub 7cd00483fe Merge pull request #5154 from Kelimion/os2-rollback
Revert "os2: Don't try to translate Windows file attributes to Unix m…
2025-05-12 23:41:25 +02:00
Jeroen van Rijn d7a83a7a1f Revert "os2: Don't try to translate Windows file attributes to Unix mode flags"
This reverts commit 95923c2059.
It'll be updated later.
2025-05-12 23:34:12 +02:00
Jeroen van RijnandGitHub 8809ce2925 Merge pull request #5152 from Kelimion/mmap-flags
Update `linux.Map_Flags_Bits`
2025-05-12 17:23:39 +02:00
Jeroen van Rijn be24feb862 Move things to constants.odin 2025-05-12 17:13:59 +02:00
Jeroen van Rijn dec3d6959d Update linux.Map_Flags_Bits
Fixes #5151

- Removes `SHARED_VALIDATE` from the enum and turns it into `Map_Shared_Validate :: Map_Flags{.SHARED, .PRIVATE}` so it has the proper value of 0x03.
- Adds `DROPPABLE`.
- Adds constants `MAP_HUGE_SHIFT` and `MAP_HUGE_MASK`.
- Adds the huge page precomputed constants from `mman.h`, defined as the log2 of the size shifted left by `MAP_HUGE_SHIFT`:
	Map_Huge_16KB
	Map_Huge_64KB
	Map_Huge_512KB
	Map_Huge_1MB
	Map_Huge_2MB
	Map_Huge_8MB
	Map_Huge_16MB
	Map_Huge_32MB
	Map_Huge_256MB
	Map_Huge_512MB
	Map_Huge_1GB
	Map_Huge_2GB
	Map_Huge_16GB
2025-05-12 16:45:51 +02:00
Jeroen van Rijn 39789bc6cb Make strings.to_cstring adhere to #optional_allocator_error 2025-05-12 01:17:34 +02:00
Jeroen van RijnandGitHub f6a39ca675 Merge pull request #5148 from Kelimion/fix-clean-path
Fix os2.clean_path on Windows
2025-05-11 15:44:40 +02:00
Jeroen van Rijn 30388cada3 Fix os2.clean_path on Windows 2025-05-11 15:35:52 +02:00
Jeroen van Rijn e3fe733a55 Fix #5139 2025-05-09 19:45:46 +02:00
Jeroen van Rijn 3adade2639 Add .rdi RadDbg files to .gitignore 2025-05-09 19:42:54 +02:00
Jeroen van Rijn 8097b59e30 Also allow comparing SOA pointers against each other
This compares the data pointer *and* the index.

```odin
package scratch

import "core:fmt"

Foo :: struct {a, b: int}

main :: proc() {
    a := new(#soa[dynamic]Foo)
    a^ = make(#soa[dynamic]Foo, 12, 12)

    b := new(#soa[dynamic]Foo)
    b^ = make(#soa[dynamic]Foo, 12, 12)

    fmt.printfln("&a[0]: %p, &b[0]: %p, Same: %v", &a[0], &b[0], &a[0] == &b[0]) // Same: false
    fmt.printfln("&a[0]: %p, &b[0]: %p, Same: %v", &a[0], &b[1], &a[0] == &b[1]) // Same: false
    fmt.printfln("&a[0]: %p, &b[0]: %p, Same: %v", &a[0], &b[2], &a[0] == &b[2]) // Same: false

    fmt.printfln("&a[0]: %p, &a[1]: %p, Same: %v", &a[0], &a[1], &a[0] == &a[1]) // Same: false
    fmt.printfln("&a[1]: %p, &a[2]: %p, Same: %v", &a[1], &a[2], &a[1] == &a[2]) // Same: false
    fmt.printfln("&a[2]: %p, &a[3]: %p, Same: %v", &a[2], &a[3], &a[2] == &a[3]) // Same: false

    fmt.printfln("&a[0]: %p, &a[0]: %p, Same: %v", &a[0], &a[0], &a[0] == &a[0]) // Same: true
    fmt.printfln("&a[1]: %p, &a[1]: %p, Same: %v", &a[1], &a[1], &a[1] == &a[1]) // Same: true
    fmt.printfln("&a[2]: %p, &a[2]: %p, Same: %v", &a[2], &a[2], &a[2] == &a[2]) // Same: true
}
```
2025-05-06 15:10:08 +02:00
Jeroen van RijnandGitHub 9a8cc2d1e7 Merge pull request #5123 from bogwi/bug/5104
Bug/5104
2025-05-06 11:57:04 +02:00
Jeroen van Rijn 8032db3484 Fix CreateDibSection binding 2025-05-05 23:23:39 +02:00
Jeroen van Rijn 2224911aca Fix type_union_tag_offset when all members are zero sized 2025-05-05 18:09:54 +02:00
Jeroen van Rijn 32cef4c11b Fix change_times on Windows and simplify time handling in stat 2025-05-04 22:55:27 +02:00
Jeroen van RijnandGitHub 1ce3a9f766 Merge pull request #5114 from Kelimion/os2-fixes
os2: Don't try to translate Windows file attributes to Unix mode flags
2025-05-04 20:21:44 +02:00
Jeroen van Rijn 95923c2059 os2: Don't try to translate Windows file attributes to Unix mode flags
Also, fix `chmod`. It passed the wrong struct size to `SetFileInformationByHandle`.
2025-05-04 20:03:07 +02:00
Jeroen van Rijn 0f2a4b80ef Proper fix for executable name on Linux. 2025-05-04 01:05:10 +02:00
Jeroen van Rijn deededfb0a Fix executable_path info on Linux 2025-05-04 00:21:20 +02:00
Jeroen van Rijn c96d8237ba Clarify error messages for types that aren't simply comparable.
Previously, it implied that these are different types:
```
W:/Scratch/scratch.odin(17:5) Error: Cannot compare expression, operator '==' not defined between the types 'Handle_Map($T=u32, $HT=u32, $Max=10000)' and 'Handle_Map($T=u32, $HT=u32, $Max=10000)'
    if m == {} {
       ^~~~~~^
```
Now:
```
W:/Scratch/scratch.odin(20:5) Error: Cannot compare expression. Type 'Handle_Map($T=u32, $HT=u32, $Max=10000)' is not simply comparable, so operator '==' is not defined for it.
	if m == {} {
	   ^~~~~~^
```
2025-05-03 22:31:01 +02:00
Jeroen van Rijn 9681d88cd3 Fix #5107
Fixes #5107 by checking whether `result_count` is non-zero before indexing `type->Proc.results->Tuple.variables`.
2025-05-03 14:42:20 +02:00
Jeroen van Rijn 30c6fea9e9 Allow polymorphic #simd array as return type 2025-05-02 15:38:43 +02:00
Jeroen van RijnandGitHub 7027d37596 Merge pull request #5103 from jasonKercher/better-box2d-build
Make build_box2d.sh more flexible
2025-05-02 04:57:58 +02:00
Jeroen van RijnandGitHub 2d8ae2d23c Merge pull request #5100 from herohiralal/patch-1
Convention-related changes in `file_windows.odin`
2025-04-30 22:27:59 +02:00
Jeroen van RijnandGitHub b04a83ce9f Merge pull request #5096 from jdennis9/master
os2: Fix reading directory on Windows sometimes failing to decode a file name following one with exotic unicode characters
2025-04-30 12:10:09 +02:00
Jeroen van RijnandGitHub 7c294a6e55 Merge pull request #5090 from Barinzaya/cbor-fix-unmarshal-slice-overflow
Fixed CBOR Slice Overflow
2025-04-29 14:34:16 +02:00
Jeroen van Rijn 4f00224dd2 Add cbor.unmarshal_from_bytes taking a []byte 2025-04-29 01:10:15 +02:00
Jeroen van Rijn 8c47d42394 Fix lru.remove 2025-04-29 00:14:46 +02:00
Jeroen van RijnandGitHub 26f1cb493e Merge pull request #5087 from elyalon/typo
Fix typo in private function
2025-04-28 21:25:10 +02:00
Jeroen van Rijn d463aba7d1 Warn if someone imports the same case-folded path twice 2025-04-27 14:32:26 +02:00
Jeroen van RijnandGitHub 7d4c3d23e6 Merge pull request #5079 from herohiralal/master
Pipe size on windows.
2025-04-26 23:05:16 +02:00
Jeroen van RijnandGitHub cfb478808e Merge pull request #5074 from Barinzaya/time-tick-add
Add `tick_add` proc to `core:time`
2025-04-24 15:28:58 +02:00
Jeroen van Rijn 47f889569f Fix float64_range example 2025-04-21 18:37:57 +02:00
Jeroen van Rijn ab5ca087a7 Add comment 2025-04-19 23:44:02 +02:00
Jeroen van RijnandGitHub 062a3c2fae Fix parsing of CDATA tags (#5059)
Fixes #5054
2025-04-19 20:25:44 +02:00
Jeroen van RijnandGitHub bc86b50392 Replace default_tcp_options with constant (#5056)
Replace `default_tcp_options` with constant
2025-04-19 14:32:59 +02:00
Jeroen van RijnandGitHub d10cb91e3f Merge pull request #5053 from fendevel/fix/sdl3-display-binding
SDL3: Fix `count` output parameter of `GetFullscreenDisplayModes`
2025-04-18 19:45:45 +02:00