summaryrefslogtreecommitdiffstats
path: root/libcxx/test/utilities/function.objects/func.memfn
diff options
context:
space:
mode:
Diffstat (limited to 'libcxx/test/utilities/function.objects/func.memfn')
-rw-r--r--libcxx/test/utilities/function.objects/func.memfn/member_data.fail.cpp42
-rw-r--r--libcxx/test/utilities/function.objects/func.memfn/member_data.pass.cpp43
-rw-r--r--libcxx/test/utilities/function.objects/func.memfn/member_function.pass.cpp72
-rw-r--r--libcxx/test/utilities/function.objects/func.memfn/member_function_const.pass.cpp78
-rw-r--r--libcxx/test/utilities/function.objects/func.memfn/member_function_const_volatile.pass.cpp78
-rw-r--r--libcxx/test/utilities/function.objects/func.memfn/member_function_volatile.pass.cpp78
6 files changed, 0 insertions, 391 deletions
diff --git a/libcxx/test/utilities/function.objects/func.memfn/member_data.fail.cpp b/libcxx/test/utilities/function.objects/func.memfn/member_data.fail.cpp
deleted file mode 100644
index 5e748c93b9e..00000000000
--- a/libcxx/test/utilities/function.objects/func.memfn/member_data.fail.cpp
+++ /dev/null
@@ -1,42 +0,0 @@
-//===----------------------------------------------------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is dual licensed under the MIT and the University of Illinois Open
-// Source Licenses. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-// <functional>
-
-// template<Returnable R, class T> unspecified mem_fn(R T::* pm);
-
-#include <functional>
-#include <cassert>
-
-struct A
-{
- double data_;
-};
-
-template <class F>
-void
-test(F f)
-{
- {
- A a;
- f(a) = 5;
- assert(a.data_ == 5);
- A* ap = &a;
- f(ap) = 6;
- assert(a.data_ == 6);
- const A* cap = ap;
- assert(f(cap) == f(ap));
- f(cap) = 7;
- }
-}
-
-int main()
-{
- test(std::mem_fn(&A::data_));
-}
diff --git a/libcxx/test/utilities/function.objects/func.memfn/member_data.pass.cpp b/libcxx/test/utilities/function.objects/func.memfn/member_data.pass.cpp
deleted file mode 100644
index dff211c6057..00000000000
--- a/libcxx/test/utilities/function.objects/func.memfn/member_data.pass.cpp
+++ /dev/null
@@ -1,43 +0,0 @@
-//===----------------------------------------------------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is dual licensed under the MIT and the University of Illinois Open
-// Source Licenses. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-// <functional>
-
-// template<Returnable R, class T> unspecified mem_fn(R T::* pm);
-
-#include <functional>
-#include <cassert>
-
-struct A
-{
- double data_;
-};
-
-template <class F>
-void
-test(F f)
-{
- {
- A a;
- f(a) = 5;
- assert(a.data_ == 5);
- A* ap = &a;
- f(ap) = 6;
- assert(a.data_ == 6);
- const A* cap = ap;
- assert(f(cap) == f(ap));
- const F& cf = f;
- assert(cf(ap) == f(ap));
- }
-}
-
-int main()
-{
- test(std::mem_fn(&A::data_));
-}
diff --git a/libcxx/test/utilities/function.objects/func.memfn/member_function.pass.cpp b/libcxx/test/utilities/function.objects/func.memfn/member_function.pass.cpp
deleted file mode 100644
index 4096bd81442..00000000000
--- a/libcxx/test/utilities/function.objects/func.memfn/member_function.pass.cpp
+++ /dev/null
@@ -1,72 +0,0 @@
-//===----------------------------------------------------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is dual licensed under the MIT and the University of Illinois Open
-// Source Licenses. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-// <functional>
-
-// template<Returnable R, class T, CopyConstructible... Args>
-// unspecified mem_fn(R (T::* pm)(Args...));
-
-#include <functional>
-#include <cassert>
-
-struct A
-{
- char test0() {return 'a';}
- char test1(int) {return 'b';}
- char test2(int, double) {return 'c';}
-};
-
-template <class F>
-void
-test0(F f)
-{
- {
- A a;
- assert(f(a) == 'a');
- A* ap = &a;
- assert(f(ap) == 'a');
- const F& cf = f;
- assert(cf(ap) == 'a');
- }
-}
-
-template <class F>
-void
-test1(F f)
-{
- {
- A a;
- assert(f(a, 1) == 'b');
- A* ap = &a;
- assert(f(ap, 2) == 'b');
- const F& cf = f;
- assert(cf(ap, 2) == 'b');
- }
-}
-
-template <class F>
-void
-test2(F f)
-{
- {
- A a;
- assert(f(a, 1, 2) == 'c');
- A* ap = &a;
- assert(f(ap, 2, 3.5) == 'c');
- const F& cf = f;
- assert(cf(ap, 2, 3.5) == 'c');
- }
-}
-
-int main()
-{
- test0(std::mem_fn(&A::test0));
- test1(std::mem_fn(&A::test1));
- test2(std::mem_fn(&A::test2));
-}
diff --git a/libcxx/test/utilities/function.objects/func.memfn/member_function_const.pass.cpp b/libcxx/test/utilities/function.objects/func.memfn/member_function_const.pass.cpp
deleted file mode 100644
index be22443e954..00000000000
--- a/libcxx/test/utilities/function.objects/func.memfn/member_function_const.pass.cpp
+++ /dev/null
@@ -1,78 +0,0 @@
-//===----------------------------------------------------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is dual licensed under the MIT and the University of Illinois Open
-// Source Licenses. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-// <functional>
-
-// template<Returnable R, class T, CopyConstructible... Args>
-// unspecified mem_fn(R (T::* pm)(Args...) const);
-
-#include <functional>
-#include <cassert>
-
-struct A
-{
- char test0() const {return 'a';}
- char test1(int) const {return 'b';}
- char test2(int, double) const {return 'c';}
-};
-
-template <class F>
-void
-test0(F f)
-{
- {
- A a;
- assert(f(a) == 'a');
- A* ap = &a;
- assert(f(ap) == 'a');
- const A* cap = &a;
- assert(f(cap) == 'a');
- const F& cf = f;
- assert(cf(ap) == 'a');
- }
-}
-
-template <class F>
-void
-test1(F f)
-{
- {
- A a;
- assert(f(a, 1) == 'b');
- A* ap = &a;
- assert(f(ap, 2) == 'b');
- const A* cap = &a;
- assert(f(cap, 2) == 'b');
- const F& cf = f;
- assert(cf(ap, 2) == 'b');
- }
-}
-
-template <class F>
-void
-test2(F f)
-{
- {
- A a;
- assert(f(a, 1, 2) == 'c');
- A* ap = &a;
- assert(f(ap, 2, 3.5) == 'c');
- const A* cap = &a;
- assert(f(cap, 2, 3.5) == 'c');
- const F& cf = f;
- assert(cf(ap, 2, 3.5) == 'c');
- }
-}
-
-int main()
-{
- test0(std::mem_fn(&A::test0));
- test1(std::mem_fn(&A::test1));
- test2(std::mem_fn(&A::test2));
-}
diff --git a/libcxx/test/utilities/function.objects/func.memfn/member_function_const_volatile.pass.cpp b/libcxx/test/utilities/function.objects/func.memfn/member_function_const_volatile.pass.cpp
deleted file mode 100644
index 329ac16a86d..00000000000
--- a/libcxx/test/utilities/function.objects/func.memfn/member_function_const_volatile.pass.cpp
+++ /dev/null
@@ -1,78 +0,0 @@
-//===----------------------------------------------------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is dual licensed under the MIT and the University of Illinois Open
-// Source Licenses. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-// <functional>
-
-// template<Returnable R, class T, CopyConstructible... Args>
-// unspecified mem_fn(R (T::* pm)(Args...) const volatile);
-
-#include <functional>
-#include <cassert>
-
-struct A
-{
- char test0() const volatile {return 'a';}
- char test1(int) const volatile {return 'b';}
- char test2(int, double) const volatile {return 'c';}
-};
-
-template <class F>
-void
-test0(F f)
-{
- {
- A a;
- assert(f(a) == 'a');
- A* ap = &a;
- assert(f(ap) == 'a');
- const volatile A* cap = &a;
- assert(f(cap) == 'a');
- const F& cf = f;
- assert(cf(ap) == 'a');
- }
-}
-
-template <class F>
-void
-test1(F f)
-{
- {
- A a;
- assert(f(a, 1) == 'b');
- A* ap = &a;
- assert(f(ap, 2) == 'b');
- const volatile A* cap = &a;
- assert(f(cap, 2) == 'b');
- const F& cf = f;
- assert(cf(ap, 2) == 'b');
- }
-}
-
-template <class F>
-void
-test2(F f)
-{
- {
- A a;
- assert(f(a, 1, 2) == 'c');
- A* ap = &a;
- assert(f(ap, 2, 3.5) == 'c');
- const volatile A* cap = &a;
- assert(f(cap, 2, 3.5) == 'c');
- const F& cf = f;
- assert(cf(ap, 2, 3.5) == 'c');
- }
-}
-
-int main()
-{
- test0(std::mem_fn(&A::test0));
- test1(std::mem_fn(&A::test1));
- test2(std::mem_fn(&A::test2));
-}
diff --git a/libcxx/test/utilities/function.objects/func.memfn/member_function_volatile.pass.cpp b/libcxx/test/utilities/function.objects/func.memfn/member_function_volatile.pass.cpp
deleted file mode 100644
index 743ded9944a..00000000000
--- a/libcxx/test/utilities/function.objects/func.memfn/member_function_volatile.pass.cpp
+++ /dev/null
@@ -1,78 +0,0 @@
-//===----------------------------------------------------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is dual licensed under the MIT and the University of Illinois Open
-// Source Licenses. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-// <functional>
-
-// template<Returnable R, class T, CopyConstructible... Args>
-// unspecified mem_fn(R (T::* pm)(Args...) volatile);
-
-#include <functional>
-#include <cassert>
-
-struct A
-{
- char test0() volatile {return 'a';}
- char test1(int) volatile {return 'b';}
- char test2(int, double) volatile {return 'c';}
-};
-
-template <class F>
-void
-test0(F f)
-{
- {
- A a;
- assert(f(a) == 'a');
- A* ap = &a;
- assert(f(ap) == 'a');
- volatile A* cap = &a;
- assert(f(cap) == 'a');
- const F& cf = f;
- assert(cf(ap) == 'a');
- }
-}
-
-template <class F>
-void
-test1(F f)
-{
- {
- A a;
- assert(f(a, 1) == 'b');
- A* ap = &a;
- assert(f(ap, 2) == 'b');
- volatile A* cap = &a;
- assert(f(cap, 2) == 'b');
- const F& cf = f;
- assert(cf(ap, 2) == 'b');
- }
-}
-
-template <class F>
-void
-test2(F f)
-{
- {
- A a;
- assert(f(a, 1, 2) == 'c');
- A* ap = &a;
- assert(f(ap, 2, 3.5) == 'c');
- volatile A* cap = &a;
- assert(f(cap, 2, 3.5) == 'c');
- const F& cf = f;
- assert(cf(ap, 2, 3.5) == 'c');
- }
-}
-
-int main()
-{
- test0(std::mem_fn(&A::test0));
- test1(std::mem_fn(&A::test1));
- test2(std::mem_fn(&A::test2));
-}
OpenPOWER on IntegriCloud