Jeroen van Rijn

Results 158 comments of Jeroen van Rijn

Looks good to me. The main thing I'd change is update the tests to no longer use the old fall back test runner and only use `core:testing` directly. But that's...

> I removed the "old" test runner stuff (I like the new style :)) There might be other things that can be tweaked (e.g. expect_value) but maybe better if you...

I can't replicate it on Ubuntu 24.04. For LLVM 18: ``` [10:18] jeroen@CALISTO:/mnt/w/Odin $ ./build_odin.sh + /usr/lib/llvm-18/bin/clang++ src/main.cpp src/libtommath.cpp -Wno-switch -Wno-macro-redefined -Wno-unused-value -DODIN_VERSION_RAW="dev-2024-05" -DGIT_SHA="856537f0c" -std=c++14 -I/usr/lib/llvm-18/include -std=c++17 -fno-exceptions -funwind-tables -D_GNU_SOURCE...

Not a bug. It has the same behaviour in Windows and Linux on amd64. You're not waiting long enough for the thread to actually start before you call join. ```cpp...

Can you maybe tone it down a notch? Your issue is that "thread does not start _on linux arm64_". That's very specific. Not "the thread doesn't start", with linux arm64...

It might actually be a bug, but at a minimum it diverges from `pthread` in its semantics, so it's worth looking into either way, and we will. Right now the...

Glancing at the code it's not strictly a bug, just due to when we check for join in the cross-platform wrapper, exiting early (because you asked for it to exit)....

Noted. :-) It kind of renders the `.Joined` flag as set by `join` useless (a duplicate of `.Done`), because with `pthread` semantics it'd be checked after the `procedure` is already...

We could reuse `@(require)` as used with imports to force usage of a global, i.e. `@(require) _a := a()`. Alternatively we could say that globals are global for a reason,...