boostorg / boostorg/iterator

Update for compatibility with C++20 iterator concepts

Open
#89 0 comments 1 reaction 0 assignees View on GitHub
Dominant language
C++
Stars
23
Forks
70
PR merge metrics
No merged PRs in 30d

Description

In C++20, forward iterators (and more advanced) no longer require the iterator reference type to be an actual reference. Instead, it is required that a reference can be formed to the reference type.

Since Boost.Iterator iterators still define their categories using C++03 rules, some iterators receive unnecessarily strict categories in terms of C++20. [Here](https://github.com/boostorg/iterator/issues/88#issuecomment-2447875807) is one example.

Perhaps, we should use C++20 rules for deducing iterator categories in C++20 and later and the current rules in C++17 and older.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.