diff --git a/libcxx/test/std/numerics/rand/rand.dis/rand.dist.uni/rand.dist.uni.int/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dis/rand.dist.uni/rand.dist.uni.int/eval.pass.cpp --- a/libcxx/test/std/numerics/rand/rand.dis/rand.dist.uni/rand.dist.uni.int/eval.pass.cpp +++ b/libcxx/test/std/numerics/rand/rand.dis/rand.dist.uni/rand.dist.uni.int/eval.pass.cpp @@ -8,8 +8,10 @@ // // REQUIRES: long_tests // -// This fails on MinGW for some unknown reason. -// UNSUPPORTED: target={{.+}}-windows-gnu +// This fails on MinGW due to crashes in calling helper functions for +// conversion between __int128 and floating point. This is fixed in LLVM 14 +// by https://reviews.llvm.org/D110413. +// XFAIL: target={{.+}}-windows-gnu && clang-13 //