The Crash / Stuck Problem (MRI)
Mutations generated by mutant can cause MRI to enter VM states its not prepared for. All MRI versions > 1.9 and < 2.2.1 are affected by this depending on your compiler flags, compiler version, and OS scheduling behavior.
This can have the following unintended effects:
MRI crashes with a segfault. Mutant kills each mutation in a dedicated fork to isolate the mutations side effects when this fork terminates abnormally (segfault) mutant counts the mutation as killed.
MRI crashes with a segfault and gets stuck when handling the segfault. Depending on the number of active kill jobs mutant might appear to continue normally until all workers are stuck into this state when it begins to hang. Currently mutant must assume that your test suite simply not terminated yet as from the outside (parent process) the difference between a long running test and a stuck MRI is not observable. Its planned to implement a timeout enforced from the parent process, but ideally MRI simply gets fixed.