| 1 | // RUN: %clang_cc1 -std=c++11 %s -verify |
| 2 | |
| 3 | // expected-note@+1 {{extern "C" language linkage specification begins here}} |
| 4 | extern "C" void operator "" _a(const char *); // expected-error {{must have C++ linkage}} |
| 5 | extern "C" template<char...> void operator "" _b(); // expected-error {{must have C++ linkage}} |
| 6 | // expected-note@-1 {{extern "C" language linkage specification begins here}} |
| 7 | |
| 8 | extern "C" { // expected-note 4 {{extern "C" language linkage specification begins here}} |
| 9 | void operator "" _c(const char *); // expected-error {{must have C++ linkage}} |
| 10 | template<char...> void operator "" _d(); // expected-error {{must have C++ linkage}} |
| 11 | namespace N { |
| 12 | void operator "" _e(const char *); // expected-error {{must have C++ linkage}} |
| 13 | template<char...> void operator "" _f(); // expected-error {{must have C++ linkage}} |
| 14 | } |
| 15 | } |
| 16 | |