diff --git a/test/std/numerics/rand/rand.device/ctor.pass.cpp b/test/std/numerics/rand/rand.device/ctor.pass.cpp index 8c45bb19a..ff9285b28 100644 --- a/test/std/numerics/rand/rand.device/ctor.pass.cpp +++ b/test/std/numerics/rand/rand.device/ctor.pass.cpp @@ -7,7 +7,6 @@ // //===----------------------------------------------------------------------===// -// XFAIL: libcpp-no-exceptions // // class random_device; @@ -44,11 +43,13 @@ void check_random_device_valid(const std::string &token) { } void check_random_device_invalid(const std::string &token) { +#ifndef TEST_HAS_NO_EXCEPTIONS try { std::random_device r(token); LIBCPP_ASSERT(false); } catch (const std::system_error&) { } +#endif } diff --git a/test/std/numerics/rand/rand.device/eval.pass.cpp b/test/std/numerics/rand/rand.device/eval.pass.cpp index eabcc201e..6ecb04547 100644 --- a/test/std/numerics/rand/rand.device/eval.pass.cpp +++ b/test/std/numerics/rand/rand.device/eval.pass.cpp @@ -7,7 +7,6 @@ // //===----------------------------------------------------------------------===// -// XFAIL: libcpp-no-exceptions // // class random_device; @@ -26,6 +25,7 @@ int main() std::random_device::result_type e = r(); } +#ifndef TEST_HAS_NO_EXCEPTIONS try { std::random_device r("/dev/null"); @@ -35,4 +35,5 @@ int main() catch (const std::system_error&) { } +#endif }