diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2009-09-15 22:15:23 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2009-09-15 22:15:23 +0000 |
commit | 8b915e7048b20b0feb60ec90c365a8eb68360cd4 (patch) | |
tree | 10ef5cafce0554184195e95619ad0d59c898dd10 /test/SemaCXX/conversion-delete-expr.cpp | |
parent | 13392aa6895bcdbbec4aa4abe48fb3d709f1e596 (diff) |
1) don't do overload resolution in selecting conversion
to pointer function for delete expression. 2)
Treat type conversion function and its 'const' version
as identical in building the visible conversion list.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81930 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/SemaCXX/conversion-delete-expr.cpp')
-rw-r--r-- | test/SemaCXX/conversion-delete-expr.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/test/SemaCXX/conversion-delete-expr.cpp b/test/SemaCXX/conversion-delete-expr.cpp index 63a9765396..708289c362 100644 --- a/test/SemaCXX/conversion-delete-expr.cpp +++ b/test/SemaCXX/conversion-delete-expr.cpp @@ -78,19 +78,18 @@ void f5(X1 x) { delete x; } // OK. In selecting a conversion to pointer functio // Test7 struct Base { - operator int*(); // expected-note {{candidate function}} + operator int*(); }; struct Derived : Base { // not the same function as Base's non-const operator int() - operator int*() const; // expected-note {{candidate function}} + operator int*() const; }; void foo6(const Derived cd, Derived d) { // overload resolution selects Derived::operator int*() const; delete cd; - - delete d; // expected-error {{ambiguous conversion of delete expression of type 'struct Derived' to a pointer}} + delete d; } // Test8 |