Topic: Defect Report: Undefined Expression in Input Iterator Note


Author: Chris Jefferson <caj@cs.york.ac.uk>
Date: Mon, 13 Dec 2004 15:49:20 +0000 (UTC)
Raw View
1) In 24.1.1.3, the following text is currently present.

"Note: For input iterators, a==b does not imply ++a=++b (Equality does
not guarantee the substitution property or referential transparency)."

However, when in Table 72, part of the definition of ++r is given as:

"pre: r is dereferenceable.
post: any copies of the previous value of r are no longer required
either to be dereferenceable ..."

While a==b does not imply that b is a copy of a, this statement should
perhaps still be made more clear.

2) There are no changes to intended behaviour

3) This Note should be altered to say "Note: For input iterators a==b,
when its behaviour is defined ++a==++b may still be false (Equality does
not guarantee the substitution property or referential transparency).


[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html                       ]