Gabriel Scherer
Gabriel Scherer
That makes a lot of sense indeed, sorry for the noise.
> `Field` and `Tag_val` are l-values and so we can't do the same thing we did with `Hd_val`. To get around this we'd have to introduce a parallel set of...
I looked at one of those races, and it is really a concurrency bug in the runtime (I propose a fix in #12591), which in fact covers two different items...
I filled more boxes in this issue after merging #12591 (fixes races with `no_orphaned_work`) and #12595 (fixes races involving `caml_collect_gc_stats_sample`). There is another PR in discussion, #12597, which would fix...
Whether one is unsound or not is a question of assumptions and optimizations made during matching. Very naive implementations would typically be correct, and slightly more elaborate implementations may very...
I have a proposal to "fix this issue for good", but it requires more work and some research. I am writing a summary of the proposal below for future reference....
Today I worked on this again with @trefis, and we: 1. now understand why the current code does not prevent the bug 2. have yet another idea to solve this...
### The problem with the proposal above The idea of my [proposal above](https://github.com/ocaml/ocaml/issues/7241#issuecomment-1594348867) is to generate different code on exits depending on the context of its exit handler -- if...
After working on this issue some more, I found a different example of unsoundness that is not related to context information, and requires a different sort of fix. ```ocaml let...
Since last week I have a working fix for this issue, but there are several pieces which I am sending as separate PRs for easier review. (Each piece is faster...