1*0a6a1f1dSLionel Sambuc // RUN: %clang_cc1 -fsyntax-only -std=c++11 -verify %s 2*0a6a1f1dSLionel Sambuc 3*0a6a1f1dSLionel Sambuc template <typename T> 4*0a6a1f1dSLionel Sambuc struct X {}; __anond08d35de0102() 5*0a6a1f1dSLionel Sambucauto b = []() { 6*0a6a1f1dSLionel Sambuc struct S { 7*0a6a1f1dSLionel Sambuc static typename X<decltype(int)>::type Run(){}; 8*0a6a1f1dSLionel Sambuc // expected-error@-1 4{{}} 9*0a6a1f1dSLionel Sambuc }; 10*0a6a1f1dSLionel Sambuc return 5; 11*0a6a1f1dSLionel Sambuc }(); 12*0a6a1f1dSLionel Sambuc 13*0a6a1f1dSLionel Sambuc template <typename T1, typename T2> 14*0a6a1f1dSLionel Sambuc class PC { 15*0a6a1f1dSLionel Sambuc }; 16*0a6a1f1dSLionel Sambuc 17*0a6a1f1dSLionel Sambuc template <typename T> 18*0a6a1f1dSLionel Sambuc class P { 19*0a6a1f1dSLionel Sambuc static typename PC<T, Invalid>::Type Foo(); 20*0a6a1f1dSLionel Sambuc // expected-error@-1 4{{}} 21*0a6a1f1dSLionel Sambuc }; 22