]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/testsuite/21_strings/basic_string/requirements/exception/generation_prohibited.cc
Update copyright years.
[thirdparty/gcc.git] / libstdc++-v3 / testsuite / 21_strings / basic_string / requirements / exception / generation_prohibited.cc
CommitLineData
52066eae 1// { dg-do run { target c++11 } }
6ab94513
PC
2// { dg-require-cstdint "" }
3
4// 2009-09-14 Benjamin Kosnik <benjamin@redhat.com>
5
7adcbafe 6// Copyright (C) 2009-2022 Free Software Foundation, Inc.
6ab94513
PC
7//
8// This file is part of the GNU ISO C++ Library. This library is free
9// software; you can redistribute it and/or modify it under the
10// terms of the GNU General Public License as published by the
11// Free Software Foundation; either version 3, or (at your option)
12// any later version.
13
14// This library is distributed in the hope that it will be useful,
15// but WITHOUT ANY WARRANTY; without even the implied warranty of
16// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17// GNU General Public License for more details.
18
19// You should have received a copy of the GNU General Public License along
20// with this library; see the file COPYING3. If not see
21// <http://www.gnu.org/licenses/>.
22
23#include <string>
50bb46e4 24#include <debug/string>
6ab94513
PC
25#include <exception/safety.h>
26
27void
28char_allocator()
29{
30 typedef char value_type;
31 typedef __gnu_cxx::throw_allocator_random<value_type> allocator_type;
32 typedef std::char_traits<value_type> traits_type;
50bb46e4
FD
33
34 {
35 typedef std::basic_string<value_type, traits_type, allocator_type> test_type;
36 __gnu_test::generation_prohibited<test_type> test;
37 }
38
39 {
40 typedef __gnu_debug::basic_string<value_type, traits_type, allocator_type> test_type;
41 __gnu_test::generation_prohibited<test_type> test;
42 }
6ab94513
PC
43}
44
45void
46wchar_allocator()
47{
48 typedef wchar_t value_type;
49 typedef __gnu_cxx::throw_allocator_random<value_type> allocator_type;
50 typedef std::char_traits<value_type> traits_type;
50bb46e4
FD
51
52 {
53 typedef std::basic_string<value_type, traits_type, allocator_type> test_type;
54 __gnu_test::generation_prohibited<test_type> test;
55 }
56
57 {
58 typedef __gnu_debug::basic_string<value_type, traits_type, allocator_type> test_type;
59 __gnu_test::generation_prohibited<test_type> test;
60 }
6ab94513
PC
61}
62
63// Container requirement testing, exceptional behavior
64int main()
65{
66 // throw_allocator
67 char_allocator();
68 wchar_allocator();
69
70 return 0;
71}