// PR c++/45418
// { dg-do compile { target c++11 } }
struct A1 { };
struct A2 {
  A2();
};
template <class T> struct B {
  T ar[1];
  B(T t):ar{t} {}
};
int main(){
  B<int> bi{1};
  A1 a1;
  B<A1> ba1{a1};
  A2 a2;
  A2 a2r[1]{{a2}};
  B<A2> ba2{a2};
}