blob: 1970c558c5063cd21afe2ba60ace27f5aabcb7ff [file] [log] [blame]
Peter Collingbourne5eec5f02011-02-09 21:12:02 +00001// RUN: %clang_cc1 -fsyntax-only -verify %s
2
Richard Smith7b3f3222012-06-18 06:11:04 +00003template<typename> struct S {};
4template<typename> void f();
5
Peter Collingbourne5eec5f02011-02-09 21:12:02 +00006void foo(void) {
7 foo<<<1; // expected-error {{expected '>>>'}} expected-note {{to match this '<<<'}}
8
9 foo<<<1,1>>>; // expected-error {{expected '('}}
10
11 foo<<<>>>(); // expected-error {{expected expression}}
Richard Smith7b3f3222012-06-18 06:11:04 +000012
Eli Bendersky36a61932014-06-20 13:09:59 +000013 // The following two are parse errors because -std=c++11 is not enabled.
Richard Smith7b3f3222012-06-18 06:11:04 +000014
Eli Bendersky36a61932014-06-20 13:09:59 +000015 S<S<S<int>>> s; // expected-error 2{{use '> >'}}
Richard Smith7b3f3222012-06-18 06:11:04 +000016 (void)(&f<S<S<int>>>==0); // expected-error 2{{use '> >'}}
Peter Collingbourne5eec5f02011-02-09 21:12:02 +000017}