Boost logo

Boost :

From: Gregory Seidman (gseidman_at_[hidden])
Date: 2001-01-20 15:28:13

Jeremy Siek sez:
} Hi Greg,
} Thanks for the email.
} On Sat, 20 Jan 2001, Gregory Seidman wrote:
} According to 24.1.2 of the standard, an OutputIterator is required to be
} Assignable.
} This means that a C++ vendor's version of std::copy could use operator=,
} and that for your code to be portable, you need to provide the operator=.
} It's better to find out this kind of thing sooner than later.

Ugh. I guess I have to use pointers where I would prefer to use references.

} Yes, I certainly agree that overly-constraining concept checking is a bad
} thing.
} I'd encourage you not to think of concept checking itself as a bad thing.
} It's like a messenger carrying bad news... don't shoot the messenger! The
} message is that there are concepts defined in the standard and elsewhere
} that have mistakes in them: over-constraining, under-constraining, too
} vague, etc. In the passed, we could ignore the problems because they
} didn't affect us in a painful way (compiler errors). With concept checks
} they do affect us, and we will need to fix them. In the end, we will have
} much better concept descriptions because of this process.

Well, I see the point of having the concept checking to make sure one's
code is portable (as in the Assignable OutputIterator example above), but
as long as I know better than the concept-checking code (and I shouldn't,
really) it is annoying. Ultimately, this is more of a bug report than a
complaint about the concept of concept checking (if you'll pardon the turn
of phrase).

} Cheers,
} Jeremy

Boost list run by bdawes at, gregod at, cpdaniel at, john at