Expect the srec_test to fail for ARM targets because the -oformat linker
[deliverable/binutils-gdb.git] / ld / testsuite / ld-srec / sr3.cc
CommitLineData
252b5132
RH
1// This file is compiled and linked into the S-record format.
2
3#define FOO_MSG_LEN 80
4
5class Foo {
6 static int foos;
7 int i;
8 static const int len = FOO_MSG_LEN;
9 char message[len];
10public:
11 static void init_foo ();
12 static int nb_foos() { return foos; }
13 Foo();
14 Foo( char* message);
15 Foo(const Foo&);
16 Foo & operator= (const Foo&);
17 ~Foo ();
18};
19
20static Foo static_foo( "static_foo");
21
22int
23main ()
24{
25 Foo automatic_foo( "automatic_foo");
26 return 0;
27}
28
29void
30terminate(void)
31{
32 /* This recursive call prevents a compiler warning that the noreturn
33 function terminate actually does return. */
34 terminate ();
35}
36
37extern "C" {
38void
39__main ()
40{
41}
42
43void
44__builtin_delete ()
45{
46}
47
48void
49__builtin_new ()
50{
51}
52
53void
54__throw ()
55{
56}
57
e1c47aa4
AM
58void
59__rethrow ()
60{
61}
62
252b5132
RH
63void
64__terminate ()
65{
66}
67
68void *__eh_pc;
69
70void ***
71__get_dynamic_handler_chain ()
72{
73 return 0;
74}
75
76void *
77__get_eh_context ()
78{
79 return 0;
80}
81
82}
83
84int Foo::foos = 0;
85
86void Foo::init_foo ()
87{
88 foos = 80;
89}
90
91Foo::Foo ()
92{
93 i = ++foos;
94}
95
0cd9f5f0 96Foo::Foo (char*)
252b5132
RH
97{
98 i = ++foos;
99}
100
101Foo::Foo (const Foo& foo)
102{
103 i = ++foos;
104 for (int k = 0; k < FOO_MSG_LEN; k++)
105 message[k] = foo.message[k];
106}
107
108Foo& Foo::operator= (const Foo& foo)
109{
110 for (int k = 0; k < FOO_MSG_LEN; k++)
111 message[k] = foo.message[k];
112 return *this;
113}
114
115Foo::~Foo ()
116{
117 foos--;
118}
This page took 0.064844 seconds and 4 git commands to generate.