
Thorsten Ottosen wrote:
David Abrahams skrev:
on Sat Nov 22 2008, "Dave Handley" <dave-AT-dah.me.uk> wrote:
My guess is that they're Thorsten's attempt to avoid silent breakage. Whether or not the attempt was well-executed is another matter, but I can understand why he might have done it: he realized that the original design was wrong, and rather than silently letting people get away with using it in ways that were to become illegal, he detected the newly-illegal usage in the only way possible, at runtime. Newly illegal usage should always be documented as such - and in this instance I'm not convinced it was.
It should be easy enough to verify one way or another.
I'm pretty sure it wasn't documented.
But if you do use a non-documented public function, you're on your own. I think it is made public as a work-around. I didn't want to batle with compilers different interpretations of friends and templates.
It was documented - see elsewhere in the thread for evidence of that. Dave