diff options
author | Marshall Clow <mclow.lists@gmail.com> | 2017-11-14 01:18:36 +0000 |
---|---|---|
committer | Marshall Clow <mclow.lists@gmail.com> | 2017-11-14 01:18:36 +0000 |
commit | 0a5ebdbf6f6846e0c82d30f6f075dd8fa454b478 (patch) | |
tree | 848119b27adc43508d411613da538c820b897249 /libcxx/test/std/iterators | |
parent | 12de6e9c110d95e4a7efdd604d9a804f003ab19d (diff) | |
download | bcm5719-llvm-0a5ebdbf6f6846e0c82d30f6f075dd8fa454b478.tar.gz bcm5719-llvm-0a5ebdbf6f6846e0c82d30f6f075dd8fa454b478.zip |
Another test for LWG2952
llvm-svn: 318126
Diffstat (limited to 'libcxx/test/std/iterators')
-rw-r--r-- | libcxx/test/std/iterators/iterator.primitives/iterator.traits/const_volatile_pointer.pass.cpp | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/libcxx/test/std/iterators/iterator.primitives/iterator.traits/const_volatile_pointer.pass.cpp b/libcxx/test/std/iterators/iterator.primitives/iterator.traits/const_volatile_pointer.pass.cpp new file mode 100644 index 00000000000..a08f35fe961 --- /dev/null +++ b/libcxx/test/std/iterators/iterator.primitives/iterator.traits/const_volatile_pointer.pass.cpp @@ -0,0 +1,28 @@ +//===----------------------------------------------------------------------===// +// +// 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 T> +// struct iterator_traits<const T*> + +#include <iterator> +#include <type_traits> + +struct A {}; + +int main() +{ + typedef std::iterator_traits<const volatile A*> It; + static_assert((std::is_same<It::difference_type, std::ptrdiff_t>::value), ""); + static_assert((std::is_same<It::value_type, A>::value), ""); + static_assert((std::is_same<It::pointer, const volatile A*>::value), ""); + static_assert((std::is_same<It::reference, const volatile A&>::value), ""); + static_assert((std::is_same<It::iterator_category, std::random_access_iterator_tag>::value), ""); +} |