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
6struct A {
7  virtual ~A();
8  const float* f();
9  float fa[3];
10};
11
12struct B {
13  B(const A& ai) : a (ai) {}
14  A a;
15};
16
17void g (const float pos[3]);
18
19extern A& a;
20void h()
21{
22  g (a.f());
23}
24