summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libcxx/include/type_traits7
-rw-r--r--libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_+.pass.cpp4
-rw-r--r--libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_-.pass.cpp4
3 files changed, 11 insertions, 4 deletions
diff --git a/libcxx/include/type_traits b/libcxx/include/type_traits
index 8facb3bb945..feb90005f5a 100644
--- a/libcxx/include/type_traits
+++ b/libcxx/include/type_traits
@@ -1947,6 +1947,13 @@ template <class _Tp> using make_unsigned_t = typename make_unsigned<_Tp>::type;
#ifdef _LIBCPP_HAS_NO_VARIADICS
+template <>
+struct _LIBCPP_TEMPLATE_VIS common_type<void, void, void>
+{
+public:
+ typedef void type;
+};
+
template <class _Tp, class _Up = void, class _Vp = void>
struct _LIBCPP_TEMPLATE_VIS common_type
{
diff --git a/libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_+.pass.cpp b/libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_+.pass.cpp
index 2bfe9a3b72e..b85f039526a 100644
--- a/libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_+.pass.cpp
+++ b/libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_+.pass.cpp
@@ -37,8 +37,8 @@ int main()
{
typedef std::chrono::duration<int, std::ratio<10,10> > D10;
typedef std::chrono::duration<int, std::ratio< 1, 1> > D1;
- D10 zero{0};
- D10 one{1};
+ D10 zero(0);
+ D10 one(1);
static_assert( (std::is_same< decltype(+one), decltype(zero-one) >::value), "");
static_assert( (std::is_same< decltype(zero+one), D1>::value), "");
static_assert( (std::is_same< decltype(+one), D1>::value), "");
diff --git a/libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_-.pass.cpp b/libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_-.pass.cpp
index bc1328c9df5..347cc1980e8 100644
--- a/libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_-.pass.cpp
+++ b/libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_-.pass.cpp
@@ -37,8 +37,8 @@ int main()
{
typedef std::chrono::duration<int, std::ratio<10,10> > D10;
typedef std::chrono::duration<int, std::ratio< 1, 1> > D1;
- D10 zero{0};
- D10 one{1};
+ D10 zero(0);
+ D10 one(1);
static_assert( (std::is_same< decltype(-one), decltype(zero-one) >::value), "");
static_assert( (std::is_same< decltype(zero-one), D1>::value), "");
static_assert( (std::is_same< decltype(-one), D1>::value), "");
OpenPOWER on IntegriCloud