diff options
| author | Eric Fiselier <eric@efcs.ca> | 2014-12-20 01:40:03 +0000 |
|---|---|---|
| committer | Eric Fiselier <eric@efcs.ca> | 2014-12-20 01:40:03 +0000 |
| commit | 5a83710e371fe68a06e6e3876c6a2c8b820a8976 (patch) | |
| tree | afde4c82ad6704681781c5cd49baa3fbd05c85db /libcxx/test/iterators/iterator.primitives/iterator.basic | |
| parent | f11e8eab527fba316c64112f6e05de1a79693a3e (diff) | |
| download | bcm5719-llvm-5a83710e371fe68a06e6e3876c6a2c8b820a8976.tar.gz bcm5719-llvm-5a83710e371fe68a06e6e3876c6a2c8b820a8976.zip | |
Move test into test/std subdirectory.
llvm-svn: 224658
Diffstat (limited to 'libcxx/test/iterators/iterator.primitives/iterator.basic')
| -rw-r--r-- | libcxx/test/iterators/iterator.primitives/iterator.basic/iterator.pass.cpp | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/libcxx/test/iterators/iterator.primitives/iterator.basic/iterator.pass.cpp b/libcxx/test/iterators/iterator.primitives/iterator.basic/iterator.pass.cpp deleted file mode 100644 index 26d5c866028..00000000000 --- a/libcxx/test/iterators/iterator.primitives/iterator.basic/iterator.pass.cpp +++ /dev/null @@ -1,82 +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. -// -//===----------------------------------------------------------------------===// - -// <iterator> - -// template<class Category, class T, class Distance = ptrdiff_t, -// class Pointer = T*, class Reference = T&> -// struct iterator -// { -// typedef T value_type; -// typedef Distance difference_type; -// typedef Pointer pointer; -// typedef Reference reference; -// typedef Category iterator_category; -// }; - -#include <iterator> -#include <type_traits> - -struct A {}; - -template <class T> -void -test2() -{ - typedef std::iterator<std::forward_iterator_tag, T> It; - static_assert((std::is_same<typename It::value_type, T>::value), ""); - static_assert((std::is_same<typename It::difference_type, std::ptrdiff_t>::value), ""); - static_assert((std::is_same<typename It::pointer, T*>::value), ""); - static_assert((std::is_same<typename It::reference, T&>::value), ""); - static_assert((std::is_same<typename It::iterator_category, std::forward_iterator_tag>::value), ""); -} - -template <class T> -void -test3() -{ - typedef std::iterator<std::bidirectional_iterator_tag, T, short> It; - static_assert((std::is_same<typename It::value_type, T>::value), ""); - static_assert((std::is_same<typename It::difference_type, short>::value), ""); - static_assert((std::is_same<typename It::pointer, T*>::value), ""); - static_assert((std::is_same<typename It::reference, T&>::value), ""); - static_assert((std::is_same<typename It::iterator_category, std::bidirectional_iterator_tag>::value), ""); -} - -template <class T> -void -test4() -{ - typedef std::iterator<std::random_access_iterator_tag, T, int, const T*> It; - static_assert((std::is_same<typename It::value_type, T>::value), ""); - static_assert((std::is_same<typename It::difference_type, int>::value), ""); - static_assert((std::is_same<typename It::pointer, const T*>::value), ""); - static_assert((std::is_same<typename It::reference, T&>::value), ""); - static_assert((std::is_same<typename It::iterator_category, std::random_access_iterator_tag>::value), ""); -} - -template <class T> -void -test5() -{ - typedef std::iterator<std::input_iterator_tag, T, long, const T*, const T&> It; - static_assert((std::is_same<typename It::value_type, T>::value), ""); - static_assert((std::is_same<typename It::difference_type, long>::value), ""); - static_assert((std::is_same<typename It::pointer, const T*>::value), ""); - static_assert((std::is_same<typename It::reference, const T&>::value), ""); - static_assert((std::is_same<typename It::iterator_category, std::input_iterator_tag>::value), ""); -} - -int main() -{ - test2<A>(); - test3<A>(); - test4<A>(); - test5<A>(); -} |

