diff options
Diffstat (limited to 'libstdc++-v3/include/std')
-rw-r--r-- | libstdc++-v3/include/std/array | 1 | ||||
-rw-r--r-- | libstdc++-v3/include/std/deque | 1 | ||||
-rw-r--r-- | libstdc++-v3/include/std/forward_list | 1 | ||||
-rw-r--r-- | libstdc++-v3/include/std/iterator | 1 | ||||
-rw-r--r-- | libstdc++-v3/include/std/list | 1 | ||||
-rw-r--r-- | libstdc++-v3/include/std/map | 1 | ||||
-rw-r--r-- | libstdc++-v3/include/std/regex | 1 | ||||
-rw-r--r-- | libstdc++-v3/include/std/set | 1 | ||||
-rw-r--r-- | libstdc++-v3/include/std/string | 1 | ||||
-rw-r--r-- | libstdc++-v3/include/std/tuple | 18 | ||||
-rw-r--r-- | libstdc++-v3/include/std/unordered_map | 1 | ||||
-rw-r--r-- | libstdc++-v3/include/std/unordered_set | 1 | ||||
-rw-r--r-- | libstdc++-v3/include/std/valarray | 42 | ||||
-rw-r--r-- | libstdc++-v3/include/std/vector | 1 |
14 files changed, 72 insertions, 0 deletions
diff --git a/libstdc++-v3/include/std/array b/libstdc++-v3/include/std/array index d374c88..26e762d 100644 --- a/libstdc++-v3/include/std/array +++ b/libstdc++-v3/include/std/array @@ -40,6 +40,7 @@ #endif #include <bits/stl_algobase.h> +#include <bits/range_access.h> #if defined(_GLIBCXX_INCLUDE_AS_CXX0X) # include <tr1_impl/array> diff --git a/libstdc++-v3/include/std/deque b/libstdc++-v3/include/std/deque index f8a55f7..b7f4b0a 100644 --- a/libstdc++-v3/include/std/deque +++ b/libstdc++-v3/include/std/deque @@ -63,6 +63,7 @@ #include <bits/stl_construct.h> #include <bits/stl_uninitialized.h> #include <bits/stl_deque.h> +#include <bits/range_access.h> #ifndef _GLIBCXX_EXPORT_TEMPLATE # include <bits/deque.tcc> diff --git a/libstdc++-v3/include/std/forward_list b/libstdc++-v3/include/std/forward_list index 16fdcc2..8b11db7 100644 --- a/libstdc++-v3/include/std/forward_list +++ b/libstdc++-v3/include/std/forward_list @@ -36,6 +36,7 @@ #else #include <bits/forward_list.h> +#include <bits/range_access.h> #ifndef _GLIBCXX_EXPORT_TEMPLATE # include <bits/forward_list.tcc> diff --git a/libstdc++-v3/include/std/iterator b/libstdc++-v3/include/std/iterator index 5395106..90152b7 100644 --- a/libstdc++-v3/include/std/iterator +++ b/libstdc++-v3/include/std/iterator @@ -65,5 +65,6 @@ #include <istream> #include <bits/stream_iterator.h> #include <bits/streambuf_iterator.h> +#include <bits/range_access.h> #endif /* _GLIBCXX_ITERATOR */ diff --git a/libstdc++-v3/include/std/list b/libstdc++-v3/include/std/list index fcf164b..566bd89 100644 --- a/libstdc++-v3/include/std/list +++ b/libstdc++-v3/include/std/list @@ -61,6 +61,7 @@ #include <bits/stl_algobase.h> #include <bits/allocator.h> #include <bits/stl_list.h> +#include <bits/range_access.h> #ifndef _GLIBCXX_EXPORT_TEMPLATE # include <bits/list.tcc> diff --git a/libstdc++-v3/include/std/map b/libstdc++-v3/include/std/map index 25f86df..0ff8bdd 100644 --- a/libstdc++-v3/include/std/map +++ b/libstdc++-v3/include/std/map @@ -60,6 +60,7 @@ #include <bits/stl_tree.h> #include <bits/stl_map.h> #include <bits/stl_multimap.h> +#include <bits/range_access.h> #ifdef _GLIBCXX_DEBUG # include <debug/map> diff --git a/libstdc++-v3/include/std/regex b/libstdc++-v3/include/std/regex index 95ad423..eabb843 100644 --- a/libstdc++-v3/include/std/regex +++ b/libstdc++-v3/include/std/regex @@ -52,6 +52,7 @@ #include <utility> #include <vector> +#include <bits/range_access.h> #include <bits/regex_constants.h> #include <bits/regex_error.h> #include <bits/regex_cursor.h> diff --git a/libstdc++-v3/include/std/set b/libstdc++-v3/include/std/set index 0b7805c..47d0c97 100644 --- a/libstdc++-v3/include/std/set +++ b/libstdc++-v3/include/std/set @@ -60,6 +60,7 @@ #include <bits/stl_tree.h> #include <bits/stl_set.h> #include <bits/stl_multiset.h> +#include <bits/range_access.h> #ifdef _GLIBCXX_DEBUG # include <debug/set> diff --git a/libstdc++-v3/include/std/string b/libstdc++-v3/include/std/string index 8c5949f..439557f 100644 --- a/libstdc++-v3/include/std/string +++ b/libstdc++-v3/include/std/string @@ -51,6 +51,7 @@ #include <ext/numeric_traits.h> #include <bits/stl_algobase.h> #include <bits/basic_string.h> +#include <bits/range_access.h> #ifndef _GLIBCXX_EXPORT_TEMPLATE # include <bits/basic_string.tcc> diff --git a/libstdc++-v3/include/std/tuple b/libstdc++-v3/include/std/tuple index 8b2252e..d243251 100644 --- a/libstdc++-v3/include/std/tuple +++ b/libstdc++-v3/include/std/tuple @@ -697,6 +697,24 @@ namespace std const _Swallow_assign ignore{}; /** + * @brief Return the first of a tuple containing two input iterators. + * @param tpl Tuple. + */ + template<class _InputIterator> + inline _InputIterator + begin(const tuple<_InputIterator, _InputIterator>& __tpl) + { return get<0>(__tpl); } + + /** + * @brief Return the second of a tuple containing two input iterators. + * @param tpl Tuple. + */ + template<class _InputIterator> + inline _InputIterator + end(const tuple<_InputIterator, _InputIterator>& __tpl) + { return get<1>(__tpl); } + + /** * Stores a tuple of indices. Used by bind() to extract the elements * in a tuple. */ diff --git a/libstdc++-v3/include/std/unordered_map b/libstdc++-v3/include/std/unordered_map index 8b664e8..e77a297 100644 --- a/libstdc++-v3/include/std/unordered_map +++ b/libstdc++-v3/include/std/unordered_map @@ -44,6 +44,7 @@ #include <bits/functional_hash.h> #include <bits/hashtable.h> #include <bits/unordered_map.h> +#include <bits/range_access.h> #ifdef _GLIBCXX_DEBUG # include <debug/unordered_map> diff --git a/libstdc++-v3/include/std/unordered_set b/libstdc++-v3/include/std/unordered_set index edbf8f1..739e0a4 100644 --- a/libstdc++-v3/include/std/unordered_set +++ b/libstdc++-v3/include/std/unordered_set @@ -44,6 +44,7 @@ #include <bits/functional_hash.h> #include <bits/hashtable.h> #include <bits/unordered_set.h> +#include <bits/range_access.h> #ifdef _GLIBCXX_DEBUG # include <debug/unordered_set> diff --git a/libstdc++-v3/include/std/valarray b/libstdc++-v3/include/std/valarray index f15ac92..d67eae2 100644 --- a/libstdc++-v3/include/std/valarray +++ b/libstdc++-v3/include/std/valarray @@ -1107,6 +1107,48 @@ _DEFINE_BINARY_OPERATOR(>=, __greater_equal) #undef _DEFINE_BINARY_OPERATOR +#ifdef __GXX_EXPERIMENTAL_CXX0X__ + /** + * @brief Return an iterator pointing to the first element of + * the valarray. + * @param va valarray. + */ + template<class _Tp> + inline _Tp* + begin(valarray<_Tp>& __va) + { return std::__addressof(__va[0]); } + + /** + * @brief Return an iterator pointing to the first element of + * the const valarray. + * @param va valarray. + */ + template<class _Tp> + inline const _Tp* + begin(const valarray<_Tp>& __va) + { return std::__addressof(__va[0]); } + + /** + * @brief Return an iterator pointing to one past the last element of + * the valarray. + * @param va valarray. + */ + template<class _Tp> + inline _Tp* + end(valarray<_Tp>& __va) + { return std::__addressof(__va[0]) + __va.size(); } + + /** + * @brief Return an iterator pointing to one past the last element of + * the const valarray. + * @param va valarray. + */ + template<class _Tp> + inline const _Tp* + end(const valarray<_Tp>& __va) + { return std::__addressof(__va[0]) + __va.size(); } +#endif // __GXX_EXPERIMENTAL_CXX0X__ + // @} group numeric_arrays _GLIBCXX_END_NAMESPACE diff --git a/libstdc++-v3/include/std/vector b/libstdc++-v3/include/std/vector index 41ecdde..ca44aac 100644 --- a/libstdc++-v3/include/std/vector +++ b/libstdc++-v3/include/std/vector @@ -64,6 +64,7 @@ #include <bits/stl_uninitialized.h> #include <bits/stl_vector.h> #include <bits/stl_bvector.h> +#include <bits/range_access.h> #ifndef _GLIBCXX_EXPORT_TEMPLATE # include <bits/vector.tcc> |