Commit Graph
100 Commits
Author SHA1 Message Date
Jeroen van Rijn cc08dca53d Add additional nullptr checks in types.cpp
Ran into a bunch of nullptr problems while reviving an 8-year old Odin problem.
2025-06-14 01:13:36 +02:00
Jeroen van RijnandGitHub f03484e352 Merge pull request #5332 from Kelimion/replace_environment_variables
Replace core:posix usage in core:os/os2
2025-06-13 18:15:31 +02:00
Jeroen van Rijn 84eaddbd47 WASI 2025-06-13 18:08:35 +02:00
Jeroen van Rijn 8c8406cc4d stub out get_env for js 2025-06-13 18:00:30 +02:00
Jeroen van Rijn 3862555153 Replace core:posix usage in core:os/os2 2025-06-13 17:49:05 +02:00
Jeroen van Rijn fe9f74f7a2 Disable PR comments 2025-06-13 07:24:03 +02:00
Jeroen van Rijn 74f70bfbcb Comment 2025-06-12 17:09:33 +02:00
Jeroen van RijnandGitHub 298bab99a4 Merge pull request #5326 from Kelimion/fix-5321
Revert changes to thread_unix.odin
2025-06-12 16:56:29 +02:00
Jeroen van Rijn 5aa377e64e Revert changes to thread_unix.odin 2025-06-12 16:36:40 +02:00
Jeroen van RijnandGitHub b119ca0261 Merge pull request #5325 from Kelimion/fix-5321
Fix #5321
2025-06-12 16:14:01 +02:00
Jeroen van Rijn 59ba37f232 Remove transmute 2025-06-12 16:05:34 +02:00
Jeroen van Rijn 994b5a2a6c Remove c import 2025-06-12 16:01:31 +02:00
Jeroen van Rijn caf41aa046 Fix #5321 2025-06-12 16:00:24 +02:00
Jeroen van RijnandGitHub eb1b5f7d3a Merge pull request #5322 from Kelimion/fix-5321
Fix #5321 (on Windows)
2025-06-12 11:52:38 +02:00
Jeroen van Rijn ac5f3746cf Fix #5321 2025-06-12 11:30:36 +02:00
Jeroen van RijnandGitHub 50ff3fabdc Merge pull request #5317 from Feoramund/fixup-container-queue
Tidy up `core:container/queue`
2025-06-12 00:00:34 +02:00
Jeroen van Rijn a2be547dfd Merge exclude paths 2025-06-11 21:00:38 +02:00
Jeroen van RijnandGitHub 8a08edbdc7 Merge pull request #5319 from Kelimion/coverage
Add code coverage
2025-06-11 20:39:48 +02:00
Jeroen van Rijn 828d4c71d2 Now? 2025-06-11 20:33:12 +02:00
Jeroen van Rijn 921414aa74 Let's use the latest Ubuntu and a recent LLVM 2025-06-11 20:04:07 +02:00
Jeroen van Rijn 3965b2e4b4 kcov --version 2025-06-11 19:58:01 +02:00
Jeroen van Rijn 05cba0aca5 Change kcov url 2025-06-11 19:53:49 +02:00
Jeroen van Rijn d37a93cd7d Add code coverage 2025-06-11 19:43:42 +02:00
Jeroen van Rijn 7bfd70a828 Add code coverage check
Inspired by PR #4928
2025-06-11 19:34:24 +02:00
Jeroen van RijnandGitHub 5bf180d8f9 Merge pull request #5311 from Kelimion/big-tests
Turn `core:math/bìg` tests into regular `core:testing` tests.
2025-06-11 00:56:21 +02:00
Jeroen van Rijn 0f90a610a2 Delete duplicate test vectors. 2025-06-11 00:49:51 +02:00
Jeroen van Rijn 9dafd77bc0 Turn core:math/bìg tests into regular core:testing tests.
`core:math/big` has been verified against Python's big integer implementation long enough.
Turn it into a regular regression test using the `core:testing` framework, testing against
a generated corpus of test vectors.
2025-06-11 00:40:52 +02:00
Jeroen van RijnandGitHub ca65444007 Merge pull request #5310 from Kelimion/big-rat-tests
Add initial tests for big rationals
2025-06-10 17:16:19 +02:00
Jeroen van Rijn 4e50b9d331 Fix path 2025-06-10 16:55:03 +02:00
Jeroen van Rijn 4f4839ecc5 Add initial tests for big rationals 2025-06-10 16:46:12 +02:00
Jeroen van RijnandGitHub 14d2541529 Merge pull request #5309 from Feoramund/fix-4660
Let `-no-entry-point` work for Windows DLLs
2025-06-10 15:22:45 +02:00
Jeroen van RijnandGitHub 611390ba27 Merge pull request #5308 from Feoramund/fix-4565
Move negation in `internal_rat_to_float` to end of procedure
2025-06-10 14:43:41 +02:00
Jeroen van RijnandGitHub d1fc731a3a Merge pull request #5306 from Kelimion/fix-3449
Define empty `gb_no_asan` if VS < 2022
2025-06-10 13:27:00 +02:00
Jeroen van Rijn 6cb2408d70 Define empty gb_no_asan if VS < 2022 2025-06-10 13:20:01 +02:00
Jeroen van RijnandGitHub d08e14fc3c Merge pull request #5304 from Feoramund/clarify-flags-variadic
Clarify `core:flags` variadic behaviors
2025-06-09 19:08:53 +02:00
Jeroen van RijnandGitHub 4a675395c5 Merge pull request #5303 from Kelimion/fix-4705
Fix #4705
2025-06-09 15:16:46 +02:00
Jeroen van Rijn 179e5b8835 Fix #4705
Allocate `doc.tokenizer`, and free it in `destroy`.
2025-06-09 15:09:04 +02:00
Jeroen van RijnandGitHub b8ac777649 Merge pull request #5301 from colrdavidson/more_tzone_bugs
Fix GMT+/- timezone handling
2025-06-09 02:11:21 +02:00
Jeroen van RijnandGitHub 7813e9fb37 Merge pull request #5300 from Feoramund/fix-5299
Guard against untyped `nil` in type cycle and type info sections
2025-06-09 00:00:24 +02:00
Jeroen van Rijn d2d187eaaa Work around untyped nil 2025-06-08 22:53:52 +02:00
Jeroen van RijnandGitHub 0be7fe4b82 Merge pull request #5298 from slowhei/master
Added missing parameter to `gettimeofday`
2025-06-08 22:37:07 +02:00
Jeroen van Rijn 77f4199af6 Simplify _xdg_user_dirs_lookup 2025-06-08 14:56:41 +02:00
Jeroen van RijnandGitHub 00b67831d1 Merge pull request #5297 from karl-zylinski/dxc-binding-fixes
DXC: Fixed broken bindings of ICompiler and ICompiler2
2025-06-08 00:18:11 +02:00
Jeroen van RijnandGitHub 6d7f5baaf8 Merge pull request #5295 from elyalon/dirs
Fix user dirs, add docs
2025-06-07 11:13:40 +02:00
Jeroen van RijnandGitHub 23315195c4 Merge pull request #5294 from iarkn/type-is-bit-field
Add `intrinsics.type_is_bit_field` proc
2025-06-06 16:14:25 +02:00
Jeroen van RijnandGitHub e7ae193c12 Merge pull request #5293 from Feoramund/nulpo-check-5215
Add `nullptr` check in `add_type_info_type_internal`
2025-06-06 15:58:03 +02:00
Jeroen van Rijn f1ce9f98d8 Re-add htonl and htons for those porting from C. 2025-06-06 13:13:34 +02:00
Jeroen van RijnandGitHub 8389dfd050 Merge pull request #5291 from Kelimion/deprecate
Deprecate old @(deprecated) things.
2025-06-06 10:50:59 +02:00
Jeroen van Rijn 4b36306674 Deprecate old @(deprecated) things. 2025-06-06 10:42:34 +02:00
Jeroen van RijnandGitHub e870369c97 Merge pull request #5288 from Feoramund/strconv-append-to-write
Clarify `strconv.append_*` to `strconv.write_*`
2025-06-05 23:45:37 +02:00
Jeroen van Rijn 108c8781c7 Factor out into helper. 2025-06-05 22:27:18 +02:00
Jeroen van Rijn 90a1b0ec4b UAF 2025-06-05 21:45:36 +02:00
Jeroen van Rijn 2428fa37a9 tabs 2025-06-05 21:38:59 +02:00
Jeroen van RijnandGitHub 5ce6eae366 Merge pull request #5285 from elyalon/dirs
Add more user platform dirs
2025-06-05 21:09:27 +02:00
Jeroen van RijnandGitHub 97fd228f01 Merge pull request #5284 from A1029384756/master
[parser.cpp] - packages with `.odin` in the name no longer attempt to parse as odin files
2025-06-05 17:42:00 +02:00
Jeroen van Rijn a1759aa2fa Fix 2025-06-05 16:54:39 +02:00
Jeroen van RijnandGitHub 3412b13216 Merge pull request #5283 from Kelimion/user-dirs
Change `os2.user_*` on Windows to use `SHGetKnownFolderPath`.
2025-06-05 16:44:05 +02:00
Jeroen van Rijn 93e1c6593e Change os2.user_* on Windows to use SHGetKnownFolderPath.
Known folders can be redirected using `SHSetKnownFolderPath`, and it's a bit iffy to rely on environment variables.

This also more easily allows us to add `user_*_dir` procedures for the remaining 139 GUIDs in `known_folders.odin`, provided they have equivalents on other platforms.
2025-06-05 16:37:41 +02:00
Jeroen van Rijn da3b3a4139 Allocate return value on provided allocator 2025-06-05 15:16:35 +02:00
Jeroen van RijnandGitHub 8cd5d01dad Merge pull request #5282 from Feoramund/fix-4364
Let compound literal array be broadcast to a struct field of arrays
2025-06-05 14:02:56 +02:00
Jeroen van RijnandGitHub 1a35c7f954 Merge pull request #5279 from Feoramund/fix-4673
Be strict with type switch case column alignment too
2025-06-04 20:24:44 +02:00
Jeroen van RijnandGitHub 4838f6b542 Merge pull request #5280 from Feoramund/fix-4642
Print timings to stderr instead of stdout
2025-06-04 20:23:41 +02:00
Jeroen van RijnandGitHub bd13bdc391 Merge pull request #5281 from Feoramund/fix-4595
Guard against negative `index` in `inject_at`
2025-06-04 20:18:02 +02:00
Jeroen van RijnandGitHub 77594a0dc9 Merge pull request #5268 from Kelimion/check-js
Allow `odin check examples/all` for js_wasm
2025-06-04 12:22:40 +02:00
Jeroen van Rijn 17319efd8f Remove SDL3/TTF flag NORMAL
It's a `bit_set`, and NORMAL is an empty one.

https://wiki.libsdl.org/SDL3_ttf/TTF_SetFontStyle

Fixes #5275
2025-06-04 11:22:59 +02:00
Jeroen van Rijn 1dffc2efd8 Switch to @(require) 2025-06-04 11:14:01 +02:00
Jeroen van Rijn ae5c92ac38 Enable odin check examples/all for JS. 2025-06-04 11:08:25 +02:00
Jeroen van RijnandGitHub d3922ebc06 Merge pull request #5276 from Feoramund/fix-4354
Forbid multiple uses of `-sanitize`
2025-06-04 10:48:48 +02:00
Jeroen van RijnandGitHub 986cfbcaf4 Merge pull request #5277 from benjryan/master
Add windows bindings to support overlapped IO
2025-06-04 10:41:46 +02:00
Jeroen van RijnandGitHub dd27049e13 Merge pull request #5261 from spiel0meister/master
add a missing nullptr check
2025-06-03 15:39:09 +02:00
Jeroen van Rijn fab7715c35 Allow -dynamic-literals for [dynamic]T 2025-06-03 15:22:20 +02:00
Jeroen van RijnandGitHub fcf0d4efa1 Merge pull request #5264 from LeandroLibanio28H/5243-fix-scope-attribute-proc-grouping
Fix scope attribute proc grouping (#5243 )
2025-06-03 14:49:40 +02:00
Jeroen van RijnandGitHub 8f2a1cafd3 Merge pull request #5266 from Kelimion/fix-5265
Fix #5265
2025-06-03 11:36:24 +02:00
Jeroen van Rijn 82dfb43663 Fix #5265 2025-06-03 11:18:11 +02:00
Jeroen van RijnandGitHub ccef390c0c Merge pull request #4339 from laytan/fix-swizzle-in-for
fix swizzle in for in statement
2025-06-02 21:20:11 +02:00
Jeroen van Rijn d4a1670b93 Fix core:log on -target:js_wasm32 2025-06-02 14:44:26 +02:00
Jeroen van RijnandGitHub 2788cfaa0d Merge pull request #5255 from Feoramund/build-mode-test-all-packages
Let `-test-all-packages` work with `-build-mode:test`
2025-06-02 14:35:24 +02:00
Jeroen van RijnandGitHub e0c9bcbb80 Merge pull request #5256 from Bambo-Borris/correct-spelling-in-odin-doc-help-output
Correct spelling in `odin doc -help` output
2025-06-02 13:56:21 +02:00
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