diff options
author | Chandler Carruth <chandlerc@gmail.com> | 2014-04-24 06:16:12 +0000 |
---|---|---|
committer | Chandler Carruth <chandlerc@gmail.com> | 2014-04-24 06:16:12 +0000 |
commit | 2c0470e781355a96f901fcf863f59b814eac20fa (patch) | |
tree | c6ae9dddbb97fefbf1e3e7a0e62ede4296aae975 /include | |
parent | 5c025f2f6efcd9e584d0f9bd5f615b9484e01fea (diff) | |
download | llvm-2c0470e781355a96f901fcf863f59b814eac20fa.tar.gz llvm-2c0470e781355a96f901fcf863f59b814eac20fa.tar.bz2 llvm-2c0470e781355a96f901fcf863f59b814eac20fa.tar.xz |
[ADT] Try to appease MSVC by sinking the enable_if from a default
template argument to a default argument to the constructor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207082 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/ADT/iterator.h | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/include/llvm/ADT/iterator.h b/include/llvm/ADT/iterator.h index e29225ad6c..e64ae9abb9 100644 --- a/include/llvm/ADT/iterator.h +++ b/include/llvm/ADT/iterator.h @@ -109,13 +109,14 @@ protected: iterator_adaptor_base() {} - template < - typename U, - typename = typename std::enable_if< + template <typename U> + explicit iterator_adaptor_base( + U &&u, + typename std::enable_if< !std::is_base_of<typename std::remove_cv< typename std::remove_reference<U>::type>::type, - DerivedT>::value>::type> - explicit iterator_adaptor_base(U &&u) + DerivedT>::value, + int>::type = 0) : I(std::forward<U &&>(u)) {} public: |