Switch more of Sema::CheckInitializerTypes over to
InitializationSequence. Specially, switch initialization of a C++
class type (either copy- or direct-initialization).
Also, make sure that we create an elidable copy-construction when
performing copy initialization of a C++ class variable. Fixes PR5826.
llvm-svn: 91750
diff --git a/clang/test/SemaCXX/conversion-function.cpp b/clang/test/SemaCXX/conversion-function.cpp
index fca5a4a..db322f4 100644
--- a/clang/test/SemaCXX/conversion-function.cpp
+++ b/clang/test/SemaCXX/conversion-function.cpp
@@ -56,14 +56,14 @@
// This used to crash Clang.
struct Flip;
-struct Flop {
+struct Flop { // expected-note{{candidate function}}
Flop();
- Flop(const Flip&);
+ Flop(const Flip&); // expected-note{{candidate function}}
};
struct Flip {
- operator Flop() const;
+ operator Flop() const; // expected-note{{candidate function}}
};
-Flop flop = Flip(); // expected-error {{cannot initialize 'flop' with an rvalue of type 'struct Flip'}}
+Flop flop = Flip(); // expected-error {{conversion from 'struct Flip' to 'struct Flop' is ambiguous}}
// This tests that we don't add the second conversion declaration to the list of user conversions
struct C {