minix/external/bsd/llvm/dist/clang/test/SemaCXX/member-operator-expr.cpp
Lionel Sambuc f4a2713ac8 Importing netbsd clang -- pristine
Change-Id: Ia40e9ffdf29b5dab2f122f673ff6802a58bc690f
2014-07-28 17:05:57 +02:00

34 lines
No EOL
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); }
}