summaryrefslogtreecommitdiff
path: root/test/SemaTemplate/deduction-crash.cpp
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2012-12-02 13:20:44 +0000
committerDimitry Andric <dim@FreeBSD.org>2012-12-02 13:20:44 +0000
commit13cc256e404620c1de0cbcc4e43ce1e2dbbc4898 (patch)
tree2732d02d7d51218d6eed98ac7fcfc5b8794896b5 /test/SemaTemplate/deduction-crash.cpp
parent657bc3d9848e3be92029b2416031340988cd0111 (diff)
Notes
Diffstat (limited to 'test/SemaTemplate/deduction-crash.cpp')
-rw-r--r--test/SemaTemplate/deduction-crash.cpp25
1 files changed, 24 insertions, 1 deletions
diff --git a/test/SemaTemplate/deduction-crash.cpp b/test/SemaTemplate/deduction-crash.cpp
index cf3899f5eda7..0714c5e51648 100644
--- a/test/SemaTemplate/deduction-crash.cpp
+++ b/test/SemaTemplate/deduction-crash.cpp
@@ -2,7 +2,7 @@
// Note that the error count below doesn't matter. We just want to
// make sure that the parser doesn't crash.
-// CHECK: 13 errors
+// CHECK: 15 errors
// PR7511
template<a>
@@ -87,3 +87,26 @@ void register_object_imp ( )
{
cout << endl<1>;
}
+
+// PR12933
+namespacae PR12933 {
+ template<typename S>
+ template<typename T>
+ void function(S a, T b) {}
+
+ int main() {
+ function(0, 1);
+ return 0;
+ }
+}
+
+// A buildbot failure from libcxx
+namespace libcxx_test {
+ template <class _Ptr, bool> struct __pointer_traits_element_type;
+ template <class _Ptr> struct __pointer_traits_element_type<_Ptr, true>;
+ template <template <class, class...> class _Sp, class _Tp, class ..._Args> struct __pointer_traits_element_type<_Sp<_Tp, _Args...>, true> {
+ typedef char type;
+ };
+ template <class T> struct B {};
+ __pointer_traits_element_type<B<int>, true>::type x;
+}