You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stdcxx.apache.org by el...@apache.org on 2008/07/09 21:16:57 UTC

svn commit: r675315 - /stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp

Author: elemings
Date: Wed Jul  9 12:16:56 2008
New Revision: 675315

URL: http://svn.apache.org/viewvc?rev=675315&view=rev
Log:
2008-07-09  Eric Lemings <er...@roguewave.com>

	STDCXX-550
	* tests/utilities/20.operators.cpp (test_random_access_iterator):
	Oops.  Should be `!defined' in #if directive.


Modified:
    stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp

Modified: stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp?rev=675315&r1=675314&r2=675315&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp (original)
+++ stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp Wed Jul  9 12:16:56 2008
@@ -397,7 +397,7 @@
 
     typedef RandomAccessIterator I;
 
-#if defined _RWSTD_NO_DEBUG_ITER
+#if !defined _RWSTD_NO_DEBUG_ITER
     RandomNumberGenerator<typename I::difference_type> rndgen;
 #else
     RandomNumberGenerator<T> rndgen;



Re: svn commit: r675315 - /stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp

Posted by Martin Sebor <se...@roguewave.com>.
Eric Lemings wrote:
>  
> I did debug and optimize builds on RH5, Sol10, and HP-UX 11.31 and they
> all built fine (unless I overlooked something).
> 
> Will double-check.

I accidentally committed a fix for the problem last night:
http://tinyurl.com/597fug

I tested it with gcc but I haven't checked nightly results
yet, so if you could do that I'd appreciate it.

Martin

> 
> Brad.
> 
>> -----Original Message-----
>> From: Martin Sebor [mailto:msebor@gmail.com] On Behalf Of Martin Sebor
>> Sent: Wednesday, July 09, 2008 9:35 PM
>> To: dev@stdcxx.apache.org
>> Subject: Re: svn commit: r675315 - 
>> /stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
>>
>> elemings@apache.org wrote:
>>> Author: elemings
>>> Date: Wed Jul  9 12:16:56 2008
>>> New Revision: 675315
>>>
>>> URL: http://svn.apache.org/viewvc?rev=675315&view=rev
>>> Log:
>>> 2008-07-09  Eric Lemings <er...@roguewave.com>
>>>
>>> 	STDCXX-550
>>> 	* tests/utilities/20.operators.cpp 
>> (test_random_access_iterator):
>>> 	Oops.  Should be `!defined' in #if directive.
>>>
>>>
>>> Modified:
>>>     stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
>>>
>>> Modified: stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
>>> URL: 
>> http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/tests/utili
>> ties/20.operators.cpp?rev=675315&r1=675314&r2=675315&view=diff
>> ==============================================================
>> ================
>>> --- stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp 
>> (original)
>>> +++ stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp 
>> Wed Jul  9 12:16:56 2008
>>> @@ -397,7 +397,7 @@
>>>  
>>>      typedef RandomAccessIterator I;
>>>  
>>> -#if defined _RWSTD_NO_DEBUG_ITER
>>> +#if !defined _RWSTD_NO_DEBUG_ITER
>>>      RandomNumberGenerator<typename I::difference_type> rndgen;
>> This won't compile when RandomAccessIterator is a plain pointer,
>> which both string::iterator and vector::iterator happen to be
>> when _RWSTD_NO_DEBUG_ITER is #defined (i.e., with optimization).
>>
>> Martin
>>
>>


Re: svn commit: r675315 - /stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp

Posted by Martin Sebor <se...@roguewave.com>.
Eric Lemings wrote:
>  
> I double-checked on RH5 and HP-UX.  Looks good to me.  What error did
> you get?

I got a compilation error while testing the _TYPENAME
-> typename changes w/o debugging. As I said, when
_RWSTD_NO_DEBUG_ITER is #defined (i.e., in an optimized
build), both string::iterator and vector::iterator are
ordinary pointers. Since the test instantiates the
function template on RandomAccessIterator being one
of these two iterators (i.e., T*), the declaration

     RandomAccessIterator::difference_type

is ill formed (T*::difference_type doesn't make sense).

To confirm what I was seeing I used iterator_traits to
verify a possible fix. I wasn't planning on checking it
in but I missed it in the giant diff.

> 
> Brad.
> 
>> -----Original Message-----
>> From: Eric Lemings [mailto:Eric.Lemings@roguewave.com] 
>> Sent: Thursday, July 10, 2008 9:30 AM
>> To: dev@stdcxx.apache.org
>> Subject: RE: svn commit: r675315 - 
>> /stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
>>
>>  
>> I did debug and optimize builds on RH5, Sol10, and HP-UX 
>> 11.31 and they
>> all built fine (unless I overlooked something).
>>
>> Will double-check.
>>
>> Brad.
>>
>>> -----Original Message-----
>>> From: Martin Sebor [mailto:msebor@gmail.com] On Behalf Of 
>> Martin Sebor
>>> Sent: Wednesday, July 09, 2008 9:35 PM
>>> To: dev@stdcxx.apache.org
>>> Subject: Re: svn commit: r675315 - 
>>> /stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
>>>
>>> elemings@apache.org wrote:
>>>> Author: elemings
>>>> Date: Wed Jul  9 12:16:56 2008
>>>> New Revision: 675315
>>>>
>>>> URL: http://svn.apache.org/viewvc?rev=675315&view=rev
>>>> Log:
>>>> 2008-07-09  Eric Lemings <er...@roguewave.com>
>>>>
>>>> 	STDCXX-550
>>>> 	* tests/utilities/20.operators.cpp 
>>> (test_random_access_iterator):
>>>> 	Oops.  Should be `!defined' in #if directive.
>>>>
>>>>
>>>> Modified:
>>>>     stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
>>>>
>>>> Modified: stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
>>>> URL: 
>>> http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/tests/utili
>>> ties/20.operators.cpp?rev=675315&r1=675314&r2=675315&view=diff
>>> ==============================================================
>>> ================
>>>> --- stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp 
>>> (original)
>>>> +++ stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp 
>>> Wed Jul  9 12:16:56 2008
>>>> @@ -397,7 +397,7 @@
>>>>  
>>>>      typedef RandomAccessIterator I;
>>>>  
>>>> -#if defined _RWSTD_NO_DEBUG_ITER
>>>> +#if !defined _RWSTD_NO_DEBUG_ITER
>>>>      RandomNumberGenerator<typename I::difference_type> rndgen;
>>> This won't compile when RandomAccessIterator is a plain pointer,
>>> which both string::iterator and vector::iterator happen to be
>>> when _RWSTD_NO_DEBUG_ITER is #defined (i.e., with optimization).
>>>
>>> Martin
>>>
>>>


RE: svn commit: r675315 - /stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp

Posted by Eric Lemings <Er...@roguewave.com>.
 
I double-checked on RH5 and HP-UX.  Looks good to me.  What error did
you get?

Brad.

> -----Original Message-----
> From: Eric Lemings [mailto:Eric.Lemings@roguewave.com] 
> Sent: Thursday, July 10, 2008 9:30 AM
> To: dev@stdcxx.apache.org
> Subject: RE: svn commit: r675315 - 
> /stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
> 
>  
> I did debug and optimize builds on RH5, Sol10, and HP-UX 
> 11.31 and they
> all built fine (unless I overlooked something).
> 
> Will double-check.
> 
> Brad.
> 
> > -----Original Message-----
> > From: Martin Sebor [mailto:msebor@gmail.com] On Behalf Of 
> Martin Sebor
> > Sent: Wednesday, July 09, 2008 9:35 PM
> > To: dev@stdcxx.apache.org
> > Subject: Re: svn commit: r675315 - 
> > /stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
> > 
> > elemings@apache.org wrote:
> > > Author: elemings
> > > Date: Wed Jul  9 12:16:56 2008
> > > New Revision: 675315
> > > 
> > > URL: http://svn.apache.org/viewvc?rev=675315&view=rev
> > > Log:
> > > 2008-07-09  Eric Lemings <er...@roguewave.com>
> > > 
> > > 	STDCXX-550
> > > 	* tests/utilities/20.operators.cpp 
> > (test_random_access_iterator):
> > > 	Oops.  Should be `!defined' in #if directive.
> > > 
> > > 
> > > Modified:
> > >     stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
> > > 
> > > Modified: stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
> > > URL: 
> > http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/tests/utili
> > ties/20.operators.cpp?rev=675315&r1=675314&r2=675315&view=diff
> > > 
> > ==============================================================
> > ================
> > > --- stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp 
> > (original)
> > > +++ stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp 
> > Wed Jul  9 12:16:56 2008
> > > @@ -397,7 +397,7 @@
> > >  
> > >      typedef RandomAccessIterator I;
> > >  
> > > -#if defined _RWSTD_NO_DEBUG_ITER
> > > +#if !defined _RWSTD_NO_DEBUG_ITER
> > >      RandomNumberGenerator<typename I::difference_type> rndgen;
> > 
> > This won't compile when RandomAccessIterator is a plain pointer,
> > which both string::iterator and vector::iterator happen to be
> > when _RWSTD_NO_DEBUG_ITER is #defined (i.e., with optimization).
> > 
> > Martin
> > 
> > 
> 

RE: svn commit: r675315 - /stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp

Posted by Eric Lemings <Er...@roguewave.com>.
 
I did debug and optimize builds on RH5, Sol10, and HP-UX 11.31 and they
all built fine (unless I overlooked something).

Will double-check.

Brad.

> -----Original Message-----
> From: Martin Sebor [mailto:msebor@gmail.com] On Behalf Of Martin Sebor
> Sent: Wednesday, July 09, 2008 9:35 PM
> To: dev@stdcxx.apache.org
> Subject: Re: svn commit: r675315 - 
> /stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
> 
> elemings@apache.org wrote:
> > Author: elemings
> > Date: Wed Jul  9 12:16:56 2008
> > New Revision: 675315
> > 
> > URL: http://svn.apache.org/viewvc?rev=675315&view=rev
> > Log:
> > 2008-07-09  Eric Lemings <er...@roguewave.com>
> > 
> > 	STDCXX-550
> > 	* tests/utilities/20.operators.cpp 
> (test_random_access_iterator):
> > 	Oops.  Should be `!defined' in #if directive.
> > 
> > 
> > Modified:
> >     stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
> > 
> > Modified: stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
> > URL: 
> http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/tests/utili
> ties/20.operators.cpp?rev=675315&r1=675314&r2=675315&view=diff
> > 
> ==============================================================
> ================
> > --- stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp 
> (original)
> > +++ stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp 
> Wed Jul  9 12:16:56 2008
> > @@ -397,7 +397,7 @@
> >  
> >      typedef RandomAccessIterator I;
> >  
> > -#if defined _RWSTD_NO_DEBUG_ITER
> > +#if !defined _RWSTD_NO_DEBUG_ITER
> >      RandomNumberGenerator<typename I::difference_type> rndgen;
> 
> This won't compile when RandomAccessIterator is a plain pointer,
> which both string::iterator and vector::iterator happen to be
> when _RWSTD_NO_DEBUG_ITER is #defined (i.e., with optimization).
> 
> Martin
> 
> 

Re: svn commit: r675315 - /stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp

Posted by Martin Sebor <se...@roguewave.com>.
elemings@apache.org wrote:
> Author: elemings
> Date: Wed Jul  9 12:16:56 2008
> New Revision: 675315
> 
> URL: http://svn.apache.org/viewvc?rev=675315&view=rev
> Log:
> 2008-07-09  Eric Lemings <er...@roguewave.com>
> 
> 	STDCXX-550
> 	* tests/utilities/20.operators.cpp (test_random_access_iterator):
> 	Oops.  Should be `!defined' in #if directive.
> 
> 
> Modified:
>     stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
> 
> Modified: stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp
> URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp?rev=675315&r1=675314&r2=675315&view=diff
> ==============================================================================
> --- stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp (original)
> +++ stdcxx/branches/4.2.x/tests/utilities/20.operators.cpp Wed Jul  9 12:16:56 2008
> @@ -397,7 +397,7 @@
>  
>      typedef RandomAccessIterator I;
>  
> -#if defined _RWSTD_NO_DEBUG_ITER
> +#if !defined _RWSTD_NO_DEBUG_ITER
>      RandomNumberGenerator<typename I::difference_type> rndgen;

This won't compile when RandomAccessIterator is a plain pointer,
which both string::iterator and vector::iterator happen to be
when _RWSTD_NO_DEBUG_ITER is #defined (i.e., with optimization).

Martin