2 // { dg-do compile { target c++11 } }
4 struct F; // { dg-message "forward declaration" }
6 union U // { dg-message "not complete" }
8 U u[1] = { 0 }; // { dg-error "5:field .u. has incomplete type" }
12 union UT // { dg-message "not complete" }
14 UT u[1] = { 0 }; // { dg-error "incomplete type" }
17 template union UT<int>;
21 F u[1] = { 0 }; // { dg-error "5:field .u. has incomplete type" }
27 F u[1] = { 0 }; // { dg-error "5:field .u. has incomplete type" }
30 template union UFT<int>;
32 struct S // { dg-message "not complete" }
34 S s[1] = { 0 }; // { dg-error "5:field .s. has incomplete type" }
38 struct ST // { dg-message "not complete" }
40 ST s[1] = { 0 }; // { dg-error "incomplete type" }
43 template class ST<int>;
47 F s[1] = { 0 }; // { dg-error "5:field .s. has incomplete type" }
53 F s[1] = { 0 }; // { dg-error "5:field .s. has incomplete type" }
56 template class SFT<int>;