1 // PR c++/6331
2 // Bug: we were generating a badly cv-qualified ARRAY_TYPE in the
3 // synthesized copy constructor for A, which then became the canonical
4 // version, confusing later uses.
5 
6 struct A {
7   virtual ~A();
8   const float* f();
9   float fa[3];
10 };
11 
12 struct B {
BB13   B(const A& ai) : a (ai) {}
14   A a;
15 };
16 
17 void g (const float pos[3]);
18 
19 extern A& a;
h()20 void h()
21 {
22   g (a.f());
23 }
24