1b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner//===----------------------------------------------------------------------===//
2b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner//
3b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner//                     The LLVM Compiler Infrastructure
4b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner//
5b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner// This file is dual licensed under the MIT and the University of Illinois Open
6b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner// Source Licenses. See LICENSE.TXT for details.
7b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner//
8b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner//===----------------------------------------------------------------------===//
9b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner
105de42e6621b3d0131472c3f8838b7f0ccf3e8963Andrew Hsieh// <unordered_map>
11b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner
125de42e6621b3d0131472c3f8838b7f0ccf3e8963Andrew Hsieh// Call erase(const_iterator first, const_iterator last); with a bad range
13a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner
145de42e6621b3d0131472c3f8838b7f0ccf3e8963Andrew Hsieh#if _LIBCPP_DEBUG >= 1
15a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner
16a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0))
17a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner
185de42e6621b3d0131472c3f8838b7f0ccf3e8963Andrew Hsieh#include <unordered_map>
19a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner#include <cassert>
20b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner#include <exception>
21b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner#include <cstdlib>
22b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner
23a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turnerint main()
24b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner{
25ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner    {
265de42e6621b3d0131472c3f8838b7f0ccf3e8963Andrew Hsieh    typedef std::pair<int, int> P;
275de42e6621b3d0131472c3f8838b7f0ccf3e8963Andrew Hsieh    P a1[] = {P(1, 1), P(2, 2), P(3, 3)};
285de42e6621b3d0131472c3f8838b7f0ccf3e8963Andrew Hsieh    std::unordered_multimap<int, int> l1(a1, a1+3);
295de42e6621b3d0131472c3f8838b7f0ccf3e8963Andrew Hsieh    std::unordered_multimap<int, int>::iterator i = l1.erase(next(l1.cbegin()), l1.cbegin());
30a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner    assert(false);
31ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner    }
32b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner}
33b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner
34a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner#else
35a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner
36b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turnerint main()
37b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner{
38b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner}
39a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner
40a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner#endif
41