class A {
public:
  A() {}
  ~A() {}

  operator bool() { return true; }
};

void test_impl_cond() {
  A a0 = A() ?: A();
  int b0;
  const A& a1 = A() ?: A();
  int b1;
}

class TestConstRefMember {
  const A& a;
public:
  TestConstRefMember();
};

TestConstRefMember::TestConstRefMember()
  : a(A()) {
  int b;
}

