mirror of
https://github.com/boostorg/iterator.git
synced 2025-07-23 09:27:15 +02:00
fixed some warnings under g++
[SVN r8600]
This commit is contained in:
@ -55,35 +55,45 @@ struct TrivialIteratorPoliciesConcept
|
|||||||
void const_constraints() const {
|
void const_constraints() const {
|
||||||
Reference r = p.dereference(type<Reference>(), x);
|
Reference r = p.dereference(type<Reference>(), x);
|
||||||
b = p.equal(x, x);
|
b = p.equal(x, x);
|
||||||
|
ignore_unused_variable_warning(r);
|
||||||
}
|
}
|
||||||
Policies p;
|
Policies p;
|
||||||
Adapted x;
|
Adapted x;
|
||||||
mutable bool b;
|
mutable bool b;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// Add InputIteratorPoliciesConcept?
|
||||||
|
|
||||||
template <class Policies, class Adapted, class Traits>
|
template <class Policies, class Adapted, class Traits>
|
||||||
struct ForwardIteratorPoliciesConcept
|
struct ForwardIteratorPoliciesConcept
|
||||||
{
|
{
|
||||||
|
typedef typename Traits::iterator_category iterator_category;
|
||||||
void constraints() {
|
void constraints() {
|
||||||
function_requires<
|
function_requires<
|
||||||
TrivialIteratorPoliciesConcept<Policies, Adapted, Traits>
|
TrivialIteratorPoliciesConcept<Policies, Adapted, Traits>
|
||||||
>();
|
>();
|
||||||
|
|
||||||
p.increment(x);
|
p.increment(x);
|
||||||
|
std::forward_iterator_tag t = iterator_category();
|
||||||
|
ignore_unused_variable_warning(t);
|
||||||
}
|
}
|
||||||
Policies p;
|
Policies p;
|
||||||
Adapted x;
|
Adapted x;
|
||||||
|
iterator_category category;
|
||||||
};
|
};
|
||||||
|
|
||||||
template <class Policies, class Adapted, class Traits>
|
template <class Policies, class Adapted, class Traits>
|
||||||
struct BidirectionalIteratorPoliciesConcept
|
struct BidirectionalIteratorPoliciesConcept
|
||||||
{
|
{
|
||||||
|
typedef typename Traits::iterator_category iterator_category;
|
||||||
void constraints() {
|
void constraints() {
|
||||||
function_requires<
|
function_requires<
|
||||||
ForwardIteratorPoliciesConcept<Policies, Adapted, Traits>
|
ForwardIteratorPoliciesConcept<Policies, Adapted, Traits>
|
||||||
>();
|
>();
|
||||||
|
|
||||||
p.decrement(x);
|
p.decrement(x);
|
||||||
|
std::bidirectional_iterator_tag t = iterator_category();
|
||||||
|
ignore_unused_variable_warning(t);
|
||||||
}
|
}
|
||||||
Policies p;
|
Policies p;
|
||||||
Adapted x;
|
Adapted x;
|
||||||
@ -93,13 +103,16 @@ template <class Policies, class Adapted, class Traits>
|
|||||||
struct RandomAccessIteratorPoliciesConcept
|
struct RandomAccessIteratorPoliciesConcept
|
||||||
{
|
{
|
||||||
typedef typename Traits::difference_type DifferenceType;
|
typedef typename Traits::difference_type DifferenceType;
|
||||||
|
typedef typename Traits::iterator_category iterator_category;
|
||||||
void constraints() {
|
void constraints() {
|
||||||
function_requires<
|
function_requires<
|
||||||
BidirectionalIteratorPoliciesConcept<Policies, Adapted, Traits>
|
BidirectionalIteratorPoliciesConcept<Policies, Adapted, Traits>
|
||||||
>();
|
>();
|
||||||
|
|
||||||
p.advance(x, n);
|
p.advance(x, n);
|
||||||
|
std::random_access_iterator_tag t = iterator_category();
|
||||||
const_constraints();
|
const_constraints();
|
||||||
|
ignore_unused_variable_warning(t);
|
||||||
}
|
}
|
||||||
void const_constraints() const {
|
void const_constraints() const {
|
||||||
n = p.distance(type<DifferenceType>(), x, x);
|
n = p.distance(type<DifferenceType>(), x, x);
|
||||||
@ -248,7 +261,7 @@ namespace detail {
|
|||||||
|
|
||||||
// Real version
|
// Real version
|
||||||
template <class Iter, class Diff>
|
template <class Iter, class Diff>
|
||||||
inline typename Iter::pointer
|
inline void
|
||||||
advance_impl(Iter& i, Diff n, std::random_access_iterator_tag) {
|
advance_impl(Iter& i, Diff n, std::random_access_iterator_tag) {
|
||||||
#ifdef __MWERKS__
|
#ifdef __MWERKS__
|
||||||
i.policies().advance<Iter>(i.iter(), n);
|
i.policies().advance<Iter>(i.iter(), n);
|
||||||
@ -265,7 +278,7 @@ namespace detail {
|
|||||||
|
|
||||||
// Real version
|
// Real version
|
||||||
template <class Iter>
|
template <class Iter>
|
||||||
inline typename Iter::pointer
|
inline void
|
||||||
decrement_impl(Iter& i, std::bidirectional_iterator_tag) {
|
decrement_impl(Iter& i, std::bidirectional_iterator_tag) {
|
||||||
#ifdef __MWERKS__
|
#ifdef __MWERKS__
|
||||||
i.policies().decrement<Iter>(i.iter());
|
i.policies().decrement<Iter>(i.iter());
|
||||||
|
Reference in New Issue
Block a user