http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53248
--- Comment #6 from Daniel Krügler <daniel.kruegler at googlemail dot com> 2012-05-06 18:56:05 UTC --- (In reply to comment #5) > By the way - I think we discussed this already, bu now I can't find anything - > what should we take the begin() == end() == unique value exactly to mean? > Don't > tell me something like an ugly reinterpret_cast<T*>(this), please My interpretation is that returning nullptr should be OK. I don't see any requirement that a unique value is something that cannot be returned by any other container (In a private communication with Howard he at least agreed with my interpretation). If this interpretation is unsafe, it should also be clarified by revised wording.