aboutsummaryrefslogtreecommitdiff
path: root/test/SemaCXX/switch.cpp
diff options
context:
space:
mode:
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}}
+}