1 // { dg-do assemble  }
2 // { dg-options "-O2 -foptimize-sibling-calls -fno-exceptions" }
3 
4 struct X
5 {
cX6   const char *c() const { return b; };
7   char *b;
8 };
9 extern "C" int f (const char *);
10 struct A
11 {
12    X x;
13    void y();
14 };
y()15 void A::y()
16 {
17   const char *const a[] = { x.c() };
18   f (a[0]);
19 }
20