On Wed, Feb 26, 2025 at 02:46:53AM -0500, Jeff King wrote: > I'd imagine that if I did a complete "rm -rf build && meson setup build" > it would work. But it's pretty lousy to have to do that preemptively > during a bisection. Looks like this runs even deeper. On my Linux machine: $ git checkout origin/next $ meson setup build [...ok...] $ meson compile -C build [...ok...] $ git checkout origin/master $ meson compile -C build [...] ../meson.build:215:35: ERROR: The `!=` operator of array does not accept objects of type str () FAILED: build.ninja /usr/bin/meson --internal regenerate /home/peff/compile/git . ninja: error: rebuilding 'build.ninja': subcommand failed $ rm -rf build $ meson setup build $ meson compile -C build [...ok again...] I'm hoping you can tell me I'm holding it wrong, and there's some way to do an incremental build when crossing these sorts of boundaries (without blowing away all of the build products). I do at least use ccache which makes the "rm -rf" case a little less painful. -Peff