34 lines
771 B
C++
34 lines
771 B
C++
|
// RUN: %clang_cc1 -fsyntax-only -verify %s
|
||
|
|
||
|
class X {
|
||
|
public:
|
||
|
int operator++();
|
||
|
operator int();
|
||
|
};
|
||
|
|
||
|
void test() {
|
||
|
X x;
|
||
|
int i;
|
||
|
|
||
|
i = x.operator++();
|
||
|
i = x.operator int();
|
||
|
x.operator--(); // expected-error{{no member named 'operator--'}}
|
||
|
x.operator float(); // expected-error{{no member named 'operator float'}}
|
||
|
x.operator; // expected-error{{expected a type}}
|
||
|
}
|
||
|
|
||
|
void test2() {
|
||
|
X *x;
|
||
|
int i;
|
||
|
|
||
|
i = x->operator++();
|
||
|
i = x->operator int();
|
||
|
x->operator--(); // expected-error{{no member named 'operator--'}}
|
||
|
x->operator float(); // expected-error{{no member named 'operator float'}}
|
||
|
x->operator; // expected-error{{expected a type}}
|
||
|
}
|
||
|
|
||
|
namespace pr13157 {
|
||
|
class A { public: void operator()(int x, int y = 2, ...) {} };
|
||
|
void f() { A()(1); }
|
||
|
}
|