summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.other/sibcall2.C
blob: 818fa231cd897db58c2b29cbf7c8a0e5f4304249 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// { dg-do assemble  }
// { dg-options "-O2 -foptimize-sibling-calls -fno-exceptions" }

struct X
{
  const char *c() const { return b; };
  char *b;
};
extern "C" int f (const char *);
struct A
{
   X x;
   void y();
};
void A::y()
{
  const char *const a[] = { x.c() };
  f (a[0]);
}