x86-64: tighten convert-load-reloc checking
[binutils-gdb.git] / gdb / testsuite / gdb.compile / compile-cplus-inherit.cc
blob2955835458f350197c8de534cbc0c57dcc3234be
1 /* Copyright 2015-2024 Free Software Foundation, Inc.
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; either version 3 of the License, or
6 (at your option) any later version.
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
13 You should have received a copy of the GNU General Public License
14 along with this program. If not, see <http://www.gnu.org/licenses/>. */
16 struct A
18 A () : a_ (1) {}
19 int do_it (int amount) { return a_ + amount; }
21 int a_;
24 struct B
26 B () : b_ (2) {}
27 int do_it (int amount) { return b_ - amount; }
29 int b_;
32 struct C
34 C () : c_ (3) {}
35 int do_it (int amount) { return c_ * amount; }
37 int c_;
40 struct D : public A, B, C
42 D () : d_ (4) {}
44 int d_;
47 int
48 main ()
50 D d;
51 int var = 1234;
53 var = d.A::do_it (1)
54 + d.B::do_it (2)
55 + d.C::do_it (3); // break here
57 return 0;