incubator-stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Martin Sebor <se...@roguewave.com>
Subject Re: svn commit: r587873 - /incubator/stdcxx/branches/4.2.x/tests/utilities/20.temp.buffer.mt.cpp
Date Wed, 24 Oct 2007 16:24:28 GMT
Farid Zaripov wrote:
>> -----Original Message-----
>> From: Martin Sebor [mailto:sebor@roguewave.com] 
>> Sent: Wednesday, October 24, 2007 5:45 PM
>> To: stdcxx-dev@incubator.apache.org
>> Subject: Re: svn commit: r587873 - 
>> /incubator/stdcxx/branches/4.2.x/tests/utilities/20.temp.buffer.mt.cpp
>>
>> faridz@apache.org wrote:
>>> Author: faridz
>>> Date: Wed Oct 24 05:22:17 2007
>>> New Revision: 587873
>>>
>>> URL: http://svn.apache.org/viewvc?rev=587873&view=rev
>> [...]
>>> @@ -137,10 +138,10 @@
>>>  
>>>  #endif   // _RWSTD_INT64_T
>>>  
>>> -    std::pair<_RWSTD_INT8_T*,  std::ptrdiff_t> buf0;
>>> -    std::pair<_RWSTD_INT16_T*, std::ptrdiff_t> buf1;
>>> -    std::pair<_RWSTD_INT32_T*, std::ptrdiff_t> buf2;
>>> -    std::pair<Type64*,         std::ptrdiff_t> buf3;
>>> +    std::pair<_RWSTD_INT8_T*,  std::ptrdiff_t> buf0 (0, 0);
>>> +    std::pair<_RWSTD_INT16_T*, std::ptrdiff_t> buf1 (0, 0);
>>> +    std::pair<_RWSTD_INT32_T*, std::ptrdiff_t> buf2 (0, 0);
>>> +    std::pair<Type64*,         std::ptrdiff_t> buf3 (0, 0);
>> Why is this necessary? Shouldn't the default ctor zero out 
>> (i.e., default-initialize) its members?
>> Is this is a workaround for a compiler bug? (If so, which one?)
> 
>   I think it was "just for sure".

The reason I asked is because having to explicitly initialize
the members by passing arguments to the ctor, even on a single
platform, would mean that std::pair is broken (on that platform)
and the 20.pairs.cpp test should fail. I don't know if there is
a platform where it does but on the two I looked at (gcc 3.2.3
on Linux and MSVC 7.1) it passes.

Martin

> 
>   Reverted back thus:
> http://svn.apache.org/viewvc?view=rev&revision=587909
> 
> Farid.


Mime
View raw message