GDB (xrefs)
Loading...
Searching...
No Matches
gdb
unittests
optional
cons
default.cc
Go to the documentation of this file.
1
// Copyright (C) 2013-2023 Free Software Foundation, Inc.
2
//
3
// This file is part of the GNU ISO C++ Library. This library is free
4
// software; you can redistribute it and/or modify it under the
5
// terms of the GNU General Public License as published by the
6
// Free Software Foundation; either version 3, or (at your option)
7
// any later version.
8
9
// This library is distributed in the hope that it will be useful,
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
// GNU General Public License for more details.
13
14
// You should have received a copy of the GNU General Public License along
15
// with this library; see the file COPYING3. If not see
16
// <http://www.gnu.org/licenses/>.
17
18
namespace
cons_default
{
19
20
struct
tracker
21
{
22
tracker
() { ++
count
; }
23
~tracker
() { --
count
; }
24
25
tracker
(
tracker
const
&) { ++
count
; }
26
tracker
(
tracker
&&) { ++
count
; }
27
28
tracker
&
operator=
(
tracker
const
&) =
default
;
29
tracker
&
operator=
(
tracker
&&) =
default
;
30
31
static
int
count
;
32
};
33
34
int
tracker::count
= 0;
35
36
static
void
37
test
()
38
{
39
// [20.5.4.1] Constructors
40
41
{
42
gdb::optional<tracker> o;
43
VERIFY
( !o );
44
}
45
46
{
47
gdb::optional<tracker> o {};
48
VERIFY
( !o );
49
}
50
51
{
52
gdb::optional<tracker> o = {};
53
VERIFY
( !o );
54
}
55
56
VERIFY
(
tracker::count
== 0 );
57
}
58
59
}
// namespace cons_default
VERIFY
#define VERIFY(x)
cons_default
Definition
default.cc:18
cons_default::test
static void test()
Definition
default.cc:37
cons_default::tracker
Definition
default.cc:21
cons_default::tracker::operator=
tracker & operator=(tracker &&)=default
cons_default::tracker::operator=
tracker & operator=(tracker const &)=default
cons_default::tracker::count
static int count
Definition
default.cc:31
cons_default::tracker::tracker
tracker()
Definition
default.cc:22
cons_default::tracker::tracker
tracker(tracker const &)
Definition
default.cc:25
cons_default::tracker::tracker
tracker(tracker &&)
Definition
default.cc:26
cons_default::tracker::~tracker
~tracker()
Definition
default.cc:23
Generated by
1.10.0