How to isolate & report non-deterministic bug

I tried bisecting and narrowed it down to a handful (~15) of commits, of which

is the most likely suspect (for fixing it). Evidence for this is circumstantial (see below), but I think it is pretty likely: it was OK in 1.10, broken in 1.11, fixed in master, and indeed a setfield! form is missing from the lowered expression.

On a related note, I found bisecting a Julia with a nontrivial reproducer (that uses a lot of packages) quite challenging. I am running into issues with resolving packages (in theory, one can always go up and keep the Manifest.toml, but if some packages lower bound then this breaks), and I am running into issues like

which eventually prevented me from pinning this down.

8 Likes