> -----Original Message-----
> From: Travis Vitek [mailto:[EMAIL PROTECTED] 
> Sent: Wednesday, July 09, 2008 12:28 PM
> To: [email protected]
> Subject: RE: svn commit: r675044 - in /stdcxx/branches/4.3.x: 
> include/rw/_tuple.h include/tuple 
> tests/utilities/20.tuple.cnstr.cpp 
> tests/utilities/20.tuple.creation.cpp 
> tests/utilities/20.tuple.h tests/utilities/20.tuple.helpers.cpp
> 
>  
> 
> Eric Lemings wrote:
> >
> >> Travis Vitek wrote:
> >>
> >> >Modified: 
> >stdcxx/branches/4.3.x/tests/utilities/20.tuple.creation.cpp
> >...
> >> >+    rw_assert (0 == std::strcmp (s, "string"), __FILE__, 
> __LINE__,
> >> >+               "s == \"string\", got false, expected true");
> >> 
> >> The tuple is holding the original pointer (not a copy), so I 
> >think you
> >> can check the actual pointer here.
> >
> >True.  But if that assumption became invalid for whatever reason, the
> >code above would still work.
> >
> >Assumptions are bad.  Robustness is good.  :)
> 
> As I see it, the tuple implementation is required to hold a copy of an
> object of the specified type (const char* in this case). If you don't
> verify the value held is indeed a copy, you are not actually verifying
> the requirements. This is wrong, and wrong is much worse than bad. :)

Good point.

Reply via email to