erase_iter_iter_db4.pass.cpp revision e1e96cb840c4587f51f23cd30ce1e0690846e552
1//===----------------------------------------------------------------------===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is dual licensed under the MIT and the University of Illinois Open 6// Source Licenses. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9 10// <list> 11 12// Call erase(const_iterator first, const_iterator last); with a bad range 13 14#if _LIBCPP_DEBUG2 >= 1 15 16#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) 17 18#include <list> 19#include <cassert> 20#include <exception> 21#include <cstdlib> 22 23int main() 24{ 25 int a1[] = {1, 2, 3}; 26 std::list<int> l1(a1, a1+3); 27 std::list<int>::iterator i = l1.erase(next(l1.cbegin()), l1.cbegin()); 28 assert(false); 29} 30 31#else 32 33int main() 34{ 35} 36 37#endif 38