1*4fa14515SRichard Smith // RUN: %clang_cc1 -std=c++17 -verify %s
2*4fa14515SRichard Smith // expected-no-diagnostics
3*4fa14515SRichard Smith 
4*4fa14515SRichard Smith template<typename T> struct A {
5*4fa14515SRichard Smith   template<typename U> struct B {
6*4fa14515SRichard Smith     B(...);
7*4fa14515SRichard Smith   };
8*4fa14515SRichard Smith   template<typename U> B(U) -> B<U>;
9*4fa14515SRichard Smith };
10*4fa14515SRichard Smith A<void>::B b = 123;
11*4fa14515SRichard Smith 
12*4fa14515SRichard Smith using T = decltype(b);
13*4fa14515SRichard Smith using T = A<void>::B<int>;
14