From 209fc55b01e453a479d415f8242bb4c462c5e137 Mon Sep 17 00:00:00 2001 From: Marshall Clow Date: Mon, 14 Nov 2016 20:38:43 +0000 Subject: [PATCH] Missed a test with exceptions disabled earlier. Oops. llvm-svn: 286883 --- .../string.cons/T_size_size.pass.cpp | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/libcxx/test/std/strings/basic.string/string.cons/T_size_size.pass.cpp b/libcxx/test/std/strings/basic.string/string.cons/T_size_size.pass.cpp index edc0f124f693..144a1ab1f58b 100644 --- a/libcxx/test/std/strings/basic.string/string.cons/T_size_size.pass.cpp +++ b/libcxx/test/std/strings/basic.string/string.cons/T_size_size.pass.cpp @@ -31,7 +31,7 @@ test(SV sv, unsigned pos, unsigned n) { typedef typename S::traits_type T; typedef typename S::allocator_type A; - try + if (pos <= sv.size()) { S s2(sv, pos, n); LIBCPP_ASSERT(s2.__invariants()); @@ -42,10 +42,20 @@ test(SV sv, unsigned pos, unsigned n) assert(s2.get_allocator() == A()); assert(s2.capacity() >= s2.size()); } - catch (std::out_of_range&) +#ifndef TEST_HAS_NO_EXCEPTIONS + else { - assert(pos > sv.size()); + try + { + S s2(sv, pos, n); + assert(false); + } + catch (std::out_of_range&) + { + assert(pos > sv.size()); + } } +#endif } template @@ -162,5 +172,5 @@ int main() S s7(s.data(), 2); // calls ctor(const char *, len) assert(s7 == "AB"); - } + } }