[Bug libstdc++/70303] New: Value-initialized debug iterators
Casey at Carter dot net
gcc-bugzilla@gcc.gnu.org
Sat Mar 19 01:23:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70303
Bug ID: 70303
Summary: Value-initialized debug iterators
Product: gcc
Version: 6.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: libstdc++
Assignee: unassigned at gcc dot gnu.org
Reporter: Casey at Carter dot net
Target Milestone: ---
Since C++14 requires value-initialized Forward iterators to compare equal, and
subtraction/ordering of RandomAccess iterators is based on equality, this
program should run to completion:
#define _GLIBCXX_DEBUG
#include <cassert>
#include <vector>
int main() {
using I = std::vector<int>::iterator;
assert(I{} == I{});
assert(!(I{} != I{}));
assert(I{} - I{} == 0);
assert(!(I{} < I{}));
assert(!(I{} > I{}));
assert(I{} <= I{});
assert(I{} >= I{});
}
instead of reporting "Error: attempt to compare a singular iterator to a
singular iterator." for any of the listed iterator operations.
More information about the Gcc-bugs
mailing list