[cfe-commits] [libcxx] r139933 - in /libcxx/trunk: include/__debug include/iterator src/debug.cpp
Howard Hinnant
hhinnant at apple.com
Fri Sep 16 15:21:44 PDT 2011
On Sep 16, 2011, at 6:19 PM, Steven Watanabe wrote:
> On 09/16/2011 02:40 PM, Howard Hinnant wrote:
>> On Sep 16, 2011, at 5:27 PM, Steven Watanabe wrote:
>>
>>> AMDG
>>>
>>> On 09/16/2011 01:48 PM, Howard Hinnant wrote:
>>>> If another container gets constructed at the same address, then there will be a collision in the database. I could probably put some checks in to detect that situation. Maybe just silently reuse the database entry in that case.
>>>>
>>>
>>> There's one sequence I can think of that would
>>> not be easily detectable.
>>>
>>> construct at address X with debugging.
>>> destroy at X without debugging.
>>> construct at X without debugging.
>>> use X
>>>
>>> In this case the new container/iterator will
>>> silently inherit any information from the old one.
>>
>> We've dropped off list. I'm not sure if that was your intention.
>>
>
> It wasn't. I just hit the wrong button, because
> I'm not used to posting to this list.
>
>> And yeah, I'm not currently seeing a way to solve all the problems that construction/destruction in different translation units causes. The best thing we may be able to do is just document: don't do that.
>>
>
> It isn't necessarily all or nothing. Would it
> be possible to set it up so that it might silently
> fail to flag some errors, but never flag correct
> code?
That is certainly a worthy goal. Do you have a specific scenario in mind? I work best with a test case.
Howard
More information about the cfe-commits
mailing list