
Christian Schladetsch wrote:
Here "start" is a reference to a not yet constructed object.
No, it's not. "start" is a reference to a well-formed object - or at least to an object that is defined in user-space as well formed.
My argument is based on this premise, and this alone: 'start' is fully created before it it used by the grammar.
If this is not true, please speak to Stroustrup. If it is true, then I am right and I take no pleasure from it. I don't think you're unable to grasp what I am saying, and I am sure you think there is a problem. But I just don't see it. I don't care about the details: the fact is that if you are taking a reference then that object has been well formed or you are doing something silly.
Christian, I understand your point and, abstracting away from the original case, I share it. However, I think your approach to the highlighted problem is not correct. You seem to ignore the fact that I'm speaking of a library that has a documented usage pattern and interface. I don't think that following that interface is "something silly", as you would call it. I propose to close our dispute at this point as it seems clear to me that we have different views on the discussed matter. What I'd really like to see is an answer from the library maintainer.