mirror of
https://github.com/llvm-mirror/libcxx.git
synced 2025-10-23 01:18:52 +08:00
Fix up the tests I added for string exceptions to be skipped when exceptions are disabled
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@258279 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -161,6 +161,7 @@ int main()
|
||||
S("12345678901234567890""ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"));
|
||||
}
|
||||
#endif
|
||||
#ifndef TEST_HAS_NO_EXCEPTIONS
|
||||
{ // test iterator operations that throw
|
||||
typedef std::string S;
|
||||
typedef ThrowingIterator<char> TIter;
|
||||
@@ -174,4 +175,5 @@ int main()
|
||||
test_exceptions(S(), TIter(s, s+10, 5, TIter::TADereference), TIter());
|
||||
test_exceptions(S(), TIter(s, s+10, 6, TIter::TAComparison), TIter());
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
@@ -161,6 +161,7 @@ int main()
|
||||
S("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"));
|
||||
}
|
||||
#endif
|
||||
#ifndef TEST_HAS_NO_EXCEPTIONS
|
||||
{ // test iterator operations that throw
|
||||
typedef std::string S;
|
||||
typedef ThrowingIterator<char> TIter;
|
||||
@@ -174,4 +175,5 @@ int main()
|
||||
test_exceptions(S(), TIter(s, s+10, 5, TIter::TADereference), TIter());
|
||||
test_exceptions(S(), TIter(s, s+10, 6, TIter::TAComparison), TIter());
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
@@ -142,6 +142,7 @@ int main()
|
||||
S("12345678901234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"));
|
||||
}
|
||||
#endif
|
||||
#ifndef TEST_HAS_NO_EXCEPTIONS
|
||||
{ // test iterator operations that throw
|
||||
typedef std::string S;
|
||||
typedef ThrowingIterator<char> TIter;
|
||||
@@ -155,6 +156,7 @@ int main()
|
||||
test_exceptions(S(), 0, TIter(s, s+10, 5, TIter::TADereference), TIter());
|
||||
test_exceptions(S(), 0, TIter(s, s+10, 6, TIter::TAComparison), TIter());
|
||||
}
|
||||
#endif
|
||||
#if _LIBCPP_DEBUG >= 1
|
||||
{
|
||||
std::string v;
|
||||
|
@@ -990,6 +990,7 @@ int main()
|
||||
test8<S>();
|
||||
}
|
||||
#endif
|
||||
#ifndef TEST_HAS_NO_EXCEPTIONS
|
||||
{ // test iterator operations that throw
|
||||
typedef std::string S;
|
||||
typedef ThrowingIterator<char> TIter;
|
||||
@@ -1003,4 +1004,5 @@ int main()
|
||||
test_exceptions(S("abcdefghijklmnopqrst"), 10, 5, TIter(s, s+10, 5, TIter::TADereference), TIter());
|
||||
test_exceptions(S("abcdefghijklmnopqrst"), 10, 5, TIter(s, s+10, 6, TIter::TAComparison), TIter());
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
@@ -349,7 +349,12 @@ struct ThrowingIterator {
|
||||
if (action_ == TAAssignment)
|
||||
{
|
||||
if (index_ == 0)
|
||||
#ifndef TEST_HAS_NO_EXCEPTIONS
|
||||
assert(false);
|
||||
#else
|
||||
throw std::runtime_error ("throw from iterator assignment");
|
||||
#endif
|
||||
|
||||
else
|
||||
--index_;
|
||||
}
|
||||
@@ -367,7 +372,11 @@ struct ThrowingIterator {
|
||||
if (action_ == TADereference)
|
||||
{
|
||||
if (index_ == 0)
|
||||
#ifndef TEST_HAS_NO_EXCEPTIONS
|
||||
assert(false);
|
||||
#else
|
||||
throw std::runtime_error ("throw from iterator dereference");
|
||||
#endif
|
||||
else
|
||||
--index_;
|
||||
}
|
||||
@@ -379,7 +388,11 @@ struct ThrowingIterator {
|
||||
if (action_ == TAIncrement)
|
||||
{
|
||||
if (index_ == 0)
|
||||
#ifndef TEST_HAS_NO_EXCEPTIONS
|
||||
assert(false);
|
||||
#else
|
||||
throw std::runtime_error ("throw from iterator increment");
|
||||
#endif
|
||||
else
|
||||
--index_;
|
||||
}
|
||||
@@ -399,7 +412,11 @@ struct ThrowingIterator {
|
||||
if (action_ == TADecrement)
|
||||
{
|
||||
if (index_ == 0)
|
||||
#ifndef TEST_HAS_NO_EXCEPTIONS
|
||||
assert(false);
|
||||
#else
|
||||
throw std::runtime_error ("throw from iterator decrement");
|
||||
#endif
|
||||
else
|
||||
--index_;
|
||||
}
|
||||
@@ -418,7 +435,11 @@ struct ThrowingIterator {
|
||||
if (action_ == TAComparison)
|
||||
{
|
||||
if (index_ == 0)
|
||||
#ifndef TEST_HAS_NO_EXCEPTIONS
|
||||
assert(false);
|
||||
#else
|
||||
throw std::runtime_error ("throw from iterator comparison");
|
||||
#endif
|
||||
else
|
||||
--index_;
|
||||
}
|
||||
|
Reference in New Issue
Block a user