diff options
author | Marshall Clow <mclow.lists@gmail.com> | 2018-02-06 20:56:55 +0000 |
---|---|---|
committer | Marshall Clow <mclow.lists@gmail.com> | 2018-02-06 20:56:55 +0000 |
commit | 655c4695cfe3224e514b357773efee77b16d9afb (patch) | |
tree | e16ca57c1cb7cd1e9462c2b725309d821d706a0e /libcxx/include/optional | |
parent | e96a9014ab3217f18e7d2646efe764cebbb3f7cd (diff) | |
download | bcm5719-llvm-655c4695cfe3224e514b357773efee77b16d9afb.tar.gz bcm5719-llvm-655c4695cfe3224e514b357773efee77b16d9afb.zip |
Implement P0777: Treating unnecessay decay
llvm-svn: 324398
Diffstat (limited to 'libcxx/include/optional')
-rw-r--r-- | libcxx/include/optional | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libcxx/include/optional b/libcxx/include/optional index 88fd6b5aba2..1f8e491daae 100644 --- a/libcxx/include/optional +++ b/libcxx/include/optional @@ -612,8 +612,8 @@ private: }; template <class _Up> using _CheckOptionalArgsCtor = conditional_t< - !is_same_v<decay_t<_Up>, in_place_t> && - !is_same_v<decay_t<_Up>, optional>, + !is_same_v<__uncvref_t<_Up>, in_place_t> && + !is_same_v<__uncvref_t<_Up>, optional>, _CheckOptionalArgsConstructor, __check_tuple_constructor_fail >; @@ -761,7 +761,7 @@ public: class = enable_if_t <__lazy_and< integral_constant<bool, - !is_same_v<decay_t<_Up>, optional> && + !is_same_v<__uncvref_t<_Up>, optional> && !(is_same_v<_Up, value_type> && is_scalar_v<value_type>) >, is_constructible<value_type, _Up>, |