// PR c++/91911 // { dg-do compile { target c++17 } } // A variant of class-deduction101.C where SpanType has fewer levels than // ConstSpanType. template struct span { using value_type = T; span(T); }; template using SpanType = decltype(span{T()}); template struct B { template using ConstSpanType = span::value_type>; }; using type = B::ConstSpanType; using type = span;