summaryrefslogtreecommitdiff
path: root/test/SemaCXX/switch.cpp
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2013-12-22 00:07:40 +0000
committerDimitry Andric <dim@FreeBSD.org>2013-12-22 00:07:40 +0000
commitbfef399519ca9b8a4b4c6b563253bad7e0eeffe0 (patch)
treedf8df0b0067b381eab470a3b8f28d14a552a6340 /test/SemaCXX/switch.cpp
parent6a0372513edbc473b538d2f724efac50405d6fef (diff)
Diffstat (limited to 'test/SemaCXX/switch.cpp')
-rw-r--r--test/SemaCXX/switch.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/SemaCXX/switch.cpp b/test/SemaCXX/switch.cpp
index 517faa9a696d..392dcd869802 100644
--- a/test/SemaCXX/switch.cpp
+++ b/test/SemaCXX/switch.cpp
@@ -85,3 +85,18 @@ void local_class(int n) {
}();
}
}
+
+namespace Conversion {
+ struct S {
+ explicit operator int(); // expected-note {{conversion}}
+ };
+ template<typename T> void f(T t) {
+ switch (t) { // expected-error {{explicit conversion}}
+ case 0:
+ return;
+ default:
+ break;
+ }
+ }
+ template void f(S); // expected-note {{instantiation of}}
+}