diff options
author | dim <dim@FreeBSD.org> | 2013-12-22 00:07:40 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2013-12-22 00:07:40 +0000 |
commit | 952eddef9aff85b1e92626e89baaf7a360e2ac85 (patch) | |
tree | df8df0b0067b381eab470a3b8f28d14a552a6340 /test/SemaCXX/overloaded-operator.cpp | |
parent | ea266cad53e3d49771fa38103913d3ec7a166694 (diff) | |
download | FreeBSD-src-952eddef9aff85b1e92626e89baaf7a360e2ac85.zip FreeBSD-src-952eddef9aff85b1e92626e89baaf7a360e2ac85.tar.gz |
Vendor import of clang release_34 branch r197841 (effectively, 3.4 RC3):
https://llvm.org/svn/llvm-project/cfe/branches/release_34@197841
Diffstat (limited to 'test/SemaCXX/overloaded-operator.cpp')
-rw-r--r-- | test/SemaCXX/overloaded-operator.cpp | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/test/SemaCXX/overloaded-operator.cpp b/test/SemaCXX/overloaded-operator.cpp index e5b3fab..99105cb 100644 --- a/test/SemaCXX/overloaded-operator.cpp +++ b/test/SemaCXX/overloaded-operator.cpp @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -fsyntax-only -verify %s +// RUN: %clang_cc1 -fsyntax-only -verify -std=c++11 %s class X { }; X operator+(X, X); @@ -387,8 +387,8 @@ void test_lookup_through_using() { namespace rdar9136502 { struct X { - int i(); - int i(int); + int i(); // expected-note{{possible target for call}} + int i(int); // expected-note{{possible target for call}} }; struct Y { @@ -396,7 +396,8 @@ namespace rdar9136502 { }; void f(X x, Y y) { - y << x.i; // expected-error{{reference to non-static member function must be called}} + y << x + .i; // expected-error{{reference to non-static member function must be called; did you mean to call it with no arguments?}} } } @@ -440,3 +441,14 @@ namespace test10 { a[bar<float>]; } } + +struct InvalidOperatorEquals { + InvalidOperatorEquals operator=() = delete; // expected-error {{overloaded 'operator=' must be a binary operator}} +}; + +namespace PR7681 { + template <typename PT1, typename PT2> class PointerUnion; + void foo(PointerUnion<int*, float*> &Result) { + Result = 1; // expected-error {{no viable overloaded '='}} // expected-note {{type 'PointerUnion<int *, float *>' is incomplete}} + } +} |