aboutsummaryrefslogtreecommitdiff
path: root/test/SemaCXX/user-defined-conversions.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/SemaCXX/user-defined-conversions.cpp')
-rw-r--r--test/SemaCXX/user-defined-conversions.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/SemaCXX/user-defined-conversions.cpp b/test/SemaCXX/user-defined-conversions.cpp
new file mode 100644
index 0000000000..b85593318d
--- /dev/null
+++ b/test/SemaCXX/user-defined-conversions.cpp
@@ -0,0 +1,22 @@
+// RUN: clang -fsyntax-only -verify %s
+struct X {
+ operator bool();
+};
+
+int& f(bool);
+float& f(int);
+
+void f_test(X x) {
+ int& i1 = f(x);
+}
+
+struct Y {
+ operator short();
+ operator float();
+};
+
+void g(int);
+
+void g_test(Y y) {
+ g(y);
+}