// { dg-do run  }
// Testcase for the lifetime of a temporary object which is used to
// initialize a reference.

int destroyed = 0;

struct A {
  A() { }
  A(int) { }
  ~A() { destroyed++; }
};

A a;
A foo () { return a; }

int main()
{
  const A& ar = foo();
  const A& ar2 = A();
  const A& ar3 = (A)1;
  return destroyed;
}
