blob: a8545a7b65f3ca0f944cc56ed0d6b5dd8f517b27 [file] [log] [blame]
// PR c++/80534
// { dg-do compile { target c++11 } }
// { dg-options "" }
template <int> struct A {
struct type {
char __data[0];
};
};
template <typename _Tp, typename = _Tp> struct B;
template <typename _Tp, typename _Dp> struct B<_Tp[], _Dp> {
_Tp _M_t;
using pointer = int;
void m_fn1() {}
};
struct C {
using Storage = A<0>::type;
using StorageUniquePointer = B<Storage[]>;
void m_fn2() { storageUniquePointer_.m_fn1(); }
StorageUniquePointer storageUniquePointer_;
};