Boost logo

Boost Users :

Subject: Re: [Boost-users] A forward iterator need not be default-constructible
From: Dave Abrahams (dave_at_[hidden])
Date: 2011-09-30 17:36:41

on Fri Sep 30 2011, Brian Allison <> wrote:

> It's not an issue of chafing, but accepting the OPs claim to be true
> requires the quoted sentence to be nonsensical.


> I'm not sure of any useful algebra where a member can be both X and
> non-X simultaneously. If there is one, please share?

"Singular" defines a concept:

   Saying it is "Singular" doesn't say anything else meaningful about an
   iterator beyond what's in that concept: self-assignment and
   destruction. It doesn't even guarantee that the other operations
   will compile, since the compiler is allowed to detect them as an
   expression of undefined behavior.

All nonsingular iterators conform to a concept that refines "Singular."

This is no less a "useful algebra" (whatever that means) than any other
concept refinement relationship.

> However, refuting the OPs claim has not even an apparent contradiction
> either to the standard or to my own understanding of fundamental
> logic.

I don't know what that means either.

Dave Abrahams
BoostPro Computing

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at