Looking for guidance to reduce a source for a clang bug report

Hello I have filed a bug report https://github.com/llvm/llvm-project/issues/214929, and I would like to reduce the source code to a concise test case. It is not my source which makes it difficult.

In the past I have mostly used CVise GitHub - marxin/cvise: Super-parallel Python port of the C-Reduce · GitHub. You should be able to preprocess the offending file and make a script that repeatedly runs clang on it with the broken arguments. A failure should be your ‘interestingness’ test. Be warned, I’ve had this take several hours before on large files and a test that is too permissive will not faithfully reproduce the original failure.

There is a script in-tree which is supposed to use creduce/cvise in such
a way that it only matches the particular assertion failure:

(I can’t attest to its quality myself; I wrote a similar script for
myself years ago that I use instead.)

If you’re willing to wait for longer, I’d advise that the interestingness test should not just match the assertion and its various details, but also make sure the reduction tool hasn’t introduced new errors or warnings. This will be, to an extent, defeated by a line directive pretending that all the code is in a system header, but this is the second best thing you can do to make the reduced example more readable. The first one is, of course, preservation of identifiers.

As for picking a tool, there is anecdotal evidence that creduce can give better reproducers than cvise, but I think it ultimately comes down to hold you hold it. I’ve never heard of the script that Joshua posted above. Personally I prefer to have more control over the process, but even beyond that I don’t see the script making any efforts to preserve identifiers, so I can’t recommend it to anyone (single-letter identifiers don’t really work for reproducers larger than 5-10 lines of code in my experience, and it’s not that often that the reduction tool is able to get this far).

I found the script posted but it needs creduce, which I am having trouble compiling on windows and msys2.