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
10a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner// <vector>
11b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner
12a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner// Call erase(const_iterator position) with iterator from another container
13a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner
14a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner#if _LIBCPP_DEBUG2 >= 1
15a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner
16a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0))
17a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner
18a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner#include <vector>
19b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner#include <cassert>
20b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner#include <cstdlib>
21a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner#include <exception>
22b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner
23ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner#include "../../../min_allocator.h"
24ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner
25a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turnerint main()
26b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner{
27ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner    {
28a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner    int a1[] = {1, 2, 3};
29a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner    std::vector<int> l1(a1, a1+3);
30a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner    std::vector<int> l2(a1, a1+3);
31a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner    std::vector<int>::const_iterator i = l2.begin();
32a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner    l1.erase(i);
33a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner    assert(false);
34ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner    }
35ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner#if __cplusplus >= 201103L
36ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner    {
37ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner    int a1[] = {1, 2, 3};
38ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner    std::vector<int, min_allocator<int>> l1(a1, a1+3);
39ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner    std::vector<int, min_allocator<int>> l2(a1, a1+3);
40ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner    std::vector<int, min_allocator<int>>::const_iterator i = l2.begin();
41ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner    l1.erase(i);
42ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner    assert(false);
43ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner    }
44ad46d2248426e810edc5878c7cb086b7093f3cf5David 'Digit' Turner#endif
45b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner}
46b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner
47a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner#else
48a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner
49b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turnerint main()
50b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner{
51b9a36c36f4b257de79bd656aefa7bfde40cedb0fDavid 'Digit' Turner}
52a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner
53a8bf9de8057ad254cc642f33bd7d0a48dc1ae55cDavid 'Digit' Turner#endif
54