summaryrefslogtreecommitdiffstats
path: root/libcxx
diff options
context:
space:
mode:
authorHoward Hinnant <hhinnant@apple.com>2013-05-06 16:58:36 +0000
committerHoward Hinnant <hhinnant@apple.com>2013-05-06 16:58:36 +0000
commiteedfabd96e97c39080e4e91c21f17a7893932afa (patch)
tree242e80c347fe3a524822b00091c436a9f7df2fb7 /libcxx
parent3e4fc3ef24387b8c19a877a96619b3351924d3ba (diff)
downloadbcm5719-llvm-eedfabd96e97c39080e4e91c21f17a7893932afa.tar.gz
bcm5719-llvm-eedfabd96e97c39080e4e91c21f17a7893932afa.zip
Expose accidentally removed __compressed_pair constructor taking piecewise_construct_t. This fixes http://llvm.org/bugs/show_bug.cgi?id=15918 .
llvm-svn: 181217
Diffstat (limited to 'libcxx')
-rw-r--r--libcxx/include/memory40
-rw-r--r--libcxx/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_F.pass.cpp10
2 files changed, 30 insertions, 20 deletions
diff --git a/libcxx/include/memory b/libcxx/include/memory
index 2a8b7e66632..912a43f64f3 100644
--- a/libcxx/include/memory
+++ b/libcxx/include/memory
@@ -2036,6 +2036,10 @@ public:
return *this;
}
+#endif // _LIBCPP_HAS_NO_RVALUE_REFERENCES
+
+#endif // _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
+
#ifndef _LIBCPP_HAS_NO_VARIADICS
template <class... _Args1, class... _Args2, size_t... _I1, size_t... _I2>
@@ -2051,10 +2055,6 @@ public:
#endif // _LIBCPP_HAS_NO_VARIADICS
-#endif // _LIBCPP_HAS_NO_RVALUE_REFERENCES
-
-#endif // _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
-
_LIBCPP_INLINE_VISIBILITY _T1_reference first() _NOEXCEPT {return __first_;}
_LIBCPP_INLINE_VISIBILITY _T1_const_reference first() const _NOEXCEPT {return __first_;}
@@ -2131,6 +2131,10 @@ public:
return *this;
}
+#endif // _LIBCPP_HAS_NO_RVALUE_REFERENCES
+
+#endif // _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
+
#ifndef _LIBCPP_HAS_NO_VARIADICS
template <class... _Args1, class... _Args2, size_t... _I1, size_t... _I2>
@@ -2146,10 +2150,6 @@ public:
#endif // _LIBCPP_HAS_NO_VARIADICS
-#endif // _LIBCPP_HAS_NO_RVALUE_REFERENCES
-
-#endif // _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
-
_LIBCPP_INLINE_VISIBILITY _T1_reference first() _NOEXCEPT {return *this;}
_LIBCPP_INLINE_VISIBILITY _T1_const_reference first() const _NOEXCEPT {return *this;}
@@ -2227,6 +2227,10 @@ public:
return *this;
}
+#endif // _LIBCPP_HAS_NO_RVALUE_REFERENCES
+
+#endif // _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
+
#ifndef _LIBCPP_HAS_NO_VARIADICS
template <class... _Args1, class... _Args2, size_t... _I1, size_t... _I2>
@@ -2243,10 +2247,6 @@ public:
#endif // _LIBCPP_HAS_NO_VARIADICS
-#endif // _LIBCPP_HAS_NO_RVALUE_REFERENCES
-
-#endif // _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
-
_LIBCPP_INLINE_VISIBILITY _T1_reference first() _NOEXCEPT {return __first_;}
_LIBCPP_INLINE_VISIBILITY _T1_const_reference first() const _NOEXCEPT {return __first_;}
@@ -2321,6 +2321,10 @@ public:
return *this;
}
+#endif // _LIBCPP_HAS_NO_RVALUE_REFERENCES
+
+#endif // _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
+
#ifndef _LIBCPP_HAS_NO_VARIADICS
template <class... _Args1, class... _Args2, size_t... _I1, size_t... _I2>
@@ -2336,10 +2340,6 @@ public:
#endif // _LIBCPP_HAS_NO_VARIADICS
-#endif // _LIBCPP_HAS_NO_RVALUE_REFERENCES
-
-#endif // _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
-
_LIBCPP_INLINE_VISIBILITY _T1_reference first() _NOEXCEPT {return *this;}
_LIBCPP_INLINE_VISIBILITY _T1_const_reference first() const _NOEXCEPT {return *this;}
@@ -2409,6 +2409,10 @@ public:
return *this;
}
+#endif // _LIBCPP_HAS_NO_RVALUE_REFERENCES
+
+#endif // _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
+
#ifndef _LIBCPP_HAS_NO_VARIADICS
template <class... _Args1, class... _Args2>
@@ -2422,10 +2426,6 @@ public:
#endif // _LIBCPP_HAS_NO_VARIADICS
-#endif // _LIBCPP_HAS_NO_RVALUE_REFERENCES
-
-#endif // _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
-
_LIBCPP_INLINE_VISIBILITY _T1_reference first() _NOEXCEPT {return base::first();}
_LIBCPP_INLINE_VISIBILITY _T1_const_reference first() const _NOEXCEPT {return base::first();}
diff --git a/libcxx/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_F.pass.cpp b/libcxx/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_F.pass.cpp
index c027ebdb363..8a16313d9be 100644
--- a/libcxx/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_F.pass.cpp
+++ b/libcxx/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_F.pass.cpp
@@ -49,6 +49,11 @@ int A::count = 0;
int g(int) {return 0;}
+class Foo {
+public:
+ void bar(int k) { }
+};
+
int main()
{
{
@@ -77,4 +82,9 @@ int main()
assert(f);
assert(f.target<int (A::*)(int) const>() != 0);
}
+ {
+ Foo f;
+ std::function<void(int)> fun = std::bind(&Foo::bar, &f, std::placeholders::_1);
+ fun(10);
+ }
}
OpenPOWER on IntegriCloud