GDB (xrefs)
Loading...
Searching...
No Matches
gdb
unittests
basic_string_view
modifiers
remove_suffix
char
1.cc
Go to the documentation of this file.
1
// { dg-options "-std=gnu++17" }
2
3
// Copyright (C) 2013-2023 Free Software Foundation, Inc.
4
//
5
// This file is part of the GNU ISO C++ Library. This library is free
6
// software; you can redistribute it and/or modify it under the
7
// terms of the GNU General Public License as published by the
8
// Free Software Foundation; either version 3, or (at your option)
9
// any later version.
10
11
// This library is distributed in the hope that it will be useful,
12
// but WITHOUT ANY WARRANTY; without even the implied warranty of
13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
// GNU General Public License for more details.
15
16
// You should have received a copy of the GNU General Public License along
17
// with this library; see the file COPYING3. If not see
18
// <http://www.gnu.org/licenses/>.
19
20
namespace
modifiers_remove_suffix
{
21
22
static
void
23
test01
()
24
{
25
using
gdb::string_view;
26
27
string_view
str0{
"olympus mons"
};
28
string_view::pointer p = str0.data();
29
str0.remove_suffix(2);
30
VERIFY
( str0.data() == p);
31
VERIFY
( str0.length() == 10 );
32
VERIFY
( str0 ==
string_view
{
"olympus mo"
} );
33
}
34
35
#ifndef GDB_STRING_VIEW
36
constexpr
bool
37
test02
()
38
{
39
using
std::string_view;
40
41
string_view
str0{
"olympus mons"
};
42
string_view::pointer p = str0.data();
43
str0.remove_suffix(2);
44
if
( str0.data() != p)
45
return
false
;
46
if
( str0.length() != 10 )
47
return
false
;
48
if
( str0 !=
string_view
{
"olympus mo"
} )
49
return
false
;
50
51
return
true
;
52
}
53
#endif
54
55
static
int
56
main
()
57
{
58
test01
();
59
#ifndef GDB_STRING_VIEW
60
static_assert
(
test02
() );
61
#endif
62
63
return
0;
64
}
65
66
}
// namespace modifiers_remove_suffix
string_view
std::basic_string_view< char, constexpr_char_traits > string_view
Definition
70483.cc:46
VERIFY
#define VERIFY(x)
modifiers_remove_suffix
Definition
1.cc:20
modifiers_remove_suffix::main
static int main()
Definition
1.cc:56
modifiers_remove_suffix::test02
constexpr bool test02()
Definition
1.cc:37
modifiers_remove_suffix::test01
static void test01()
Definition
1.cc:23
Generated by
1.10.0