// RUN: %clang_cc1 -fsyntax-only -verify %s template<typename T=int> struct S {}; template<typename> void f(); void foo(void) { foo<<<1; // expected-error {{expected '>>>'}} expected-note {{to match this '<<<'}} foo<<<1,1>>>; // expected-error {{expected '('}} foo<<<>>>(); // expected-error {{expected expression}} S<S<S<int>>> s; S<S<S<>>> s1; (void)(&f<S<S<int>>>==0); (void)(&f<S<S<>>>==0); }