24 lines
851 B
C++
24 lines
851 B
C++
// RUN: %clang_cc1 -fsyntax-only -verify %s
|
|
|
|
struct string {};
|
|
|
|
class StringPiece; // expected-note {{forward declaration of 'StringPiece'}} \
|
|
// expected-note {{forward declaration of 'StringPiece'}}
|
|
|
|
struct Test {
|
|
void expectStringPiece(const StringPiece& blah) {}; // expected-note {{passing argument to parameter 'blah' here}}
|
|
|
|
void test(const string& s) {
|
|
expectStringPiece(s); // expected-error {{no viable conversion from 'const string' to incomplete type 'const StringPiece'}}
|
|
}
|
|
};
|
|
|
|
struct TestStatic {
|
|
static void expectStringPiece(const StringPiece& blah) {}; // expected-note {{passing argument to parameter 'blah' here}}
|
|
|
|
static void test(const string& s) {
|
|
expectStringPiece(s); // expected-error {{no viable conversion from 'const string' to incomplete type 'const StringPiece'}}
|
|
}
|
|
};
|
|
|