RE: svn commit: r673865 - in /stdcxx/branches/4.3.x/tests/utilities: 20.forward.cpp 20.tuple.cnstr.cpp 20.tuple.creation.cpp 20.tuple.elem.cpp 20.tuple.helpers.cpp 20.tuple.rel.cpp

View: New views
3 Messages — Rating Filter:   Alert me  

Parent Message unknown RE: svn commit: r673865 - in /stdcxx/branches/4.3.x/tests/utilities: 20.forward.cpp 20.tuple.cnstr.cpp 20.tuple.creation.cpp 20.tuple.elem.cpp 20.tuple.helpers.cpp 20.tuple.rel.cpp

by Eric Lemings-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

 
I think there should be an implicit #define directive in <rw/_defs.h>:

        #if defined _RWSTD_NO_VARIADIC_TEMPLATES
            //|| defined _RWSTD_NO_RVALUE_REFERENCES if actually
required for C++0x extensions
        #  define _RWSTD_NO_EXT_CXX_0X
        #endif

What does everyone think?

Brad.

> -----Original Message-----
> From: Travis Vitek
> Sent: Monday, July 07, 2008 2:00 PM
> To: Eric Lemings
> Subject: RE: svn commit: r673865 - in
> /stdcxx/branches/4.3.x/tests/utilities: 20.forward.cpp
> 20.tuple.cnstr.cpp 20.tuple.creation.cpp 20.tuple.elem.cpp
> 20.tuple.helpers.cpp 20.tuple.rel.cpp
>
>
> Yes, I'm porting to aCC and none of the tuple tests compile
> (lack of rvalue reference). Actually, now that I think about
> it I should probably have added a check for variadic templates. Ugh.
>
> >-----Original Message-----
> >From: Eric Lemings
> >Sent: Monday, July 07, 2008 11:02 AM
> >To: Travis Vitek
> >Subject: RE: svn commit: r673865 - in
> >/stdcxx/branches/4.3.x/tests/utilities: 20.forward.cpp
> >20.tuple.cnstr.cpp 20.tuple.creation.cpp 20.tuple.elem.cpp
> >20.tuple.helpers.cpp 20.tuple.rel.cpp
> >
> >
> >
> >> -----Original Message-----
> >> From: vitek@... [mailto:vitek@...]
> >> Sent: Thursday, July 03, 2008 5:26 PM
> >> To: commits@...
> >> Subject: svn commit: r673865 - in
> >> /stdcxx/branches/4.3.x/tests/utilities: 20.forward.cpp
> >> 20.tuple.cnstr.cpp 20.tuple.creation.cpp 20.tuple.elem.cpp
> >> 20.tuple.helpers.cpp 20.tuple.rel.cpp
> >>
> >> Author: vitek
> >> Date: Thu Jul  3 16:26:24 2008
> >> New Revision: 673865
> >>
> >...
> >> Modified: stdcxx/branches/4.3.x/tests/utilities/20.tuple.cnstr.cpp
> >> URL:
> >> http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/tests/utili
> >> ties/20.tuple.cnstr.cpp?rev=673865&r1=673864&r2=673865&view=diff
> >> ==============================================================
> >> ================
> >> --- stdcxx/branches/4.3.x/tests/utilities/20.tuple.cnstr.cpp
> >> (original)
> >> +++ stdcxx/branches/4.3.x/tests/utilities/20.tuple.cnstr.cpp
> >> Thu Jul  3 16:26:24 2008
> >> @@ -29,7 +29,8 @@
> >>  #include <rw_driver.h>
> >>  
> >>  // compile out all test code if extensions disabled
> >> -#ifndef _RWSTD_NO_EXT_CXX_0X
> >> +#if    !defined (_RWSTD_NO_EXT_CXX_0X) \
> >> +    && !defined(_RWSTD_NO_RVALUE_REFERENCES)
> >
> >Just to verify, your reasoning for this is that C++0x
> >extensions can be enabled but without support for rvalue references?
> >
> >If so, sounds reasonable.  Just wanted to double check.
> >
> >Brad.
> >

Re: svn commit: r673865 - in /stdcxx/branches/4.3.x/tests/utilities: 20.forward.cpp 20.tuple.cnstr.cpp 20.tuple.creation.cpp 20.tuple.elem.cpp 20.tuple.helpers.cpp 20.tuple.rel.cpp

by Martin Sebor :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Eric Lemings wrote:

>  
> I think there should be an implicit #define directive in <rw/_defs.h>:
>
> #if defined _RWSTD_NO_VARIADIC_TEMPLATES
>    //|| defined _RWSTD_NO_RVALUE_REFERENCES if actually
> required for C++0x extensions
> #  define _RWSTD_NO_EXT_CXX_0X
> #endif
>
> What does everyone think?

I think it's unnecessary and possibly undesirable. There might be
C++ 0x components that compile without variadic templates, either
because they don't need them (e.g., Random Number Generators) or
because we've provided workarounds (e.g., Type Traits).

Martin

>
> Brad.
>
>> -----Original Message-----
>> From: Travis Vitek
>> Sent: Monday, July 07, 2008 2:00 PM
>> To: Eric Lemings
>> Subject: RE: svn commit: r673865 - in
>> /stdcxx/branches/4.3.x/tests/utilities: 20.forward.cpp
>> 20.tuple.cnstr.cpp 20.tuple.creation.cpp 20.tuple.elem.cpp
>> 20.tuple.helpers.cpp 20.tuple.rel.cpp
>>
>>
>> Yes, I'm porting to aCC and none of the tuple tests compile
>> (lack of rvalue reference). Actually, now that I think about
>> it I should probably have added a check for variadic templates. Ugh.
>>
>>> -----Original Message-----
>>> From: Eric Lemings
>>> Sent: Monday, July 07, 2008 11:02 AM
>>> To: Travis Vitek
>>> Subject: RE: svn commit: r673865 - in
>>> /stdcxx/branches/4.3.x/tests/utilities: 20.forward.cpp
>>> 20.tuple.cnstr.cpp 20.tuple.creation.cpp 20.tuple.elem.cpp
>>> 20.tuple.helpers.cpp 20.tuple.rel.cpp
>>>
>>>
>>>
>>>> -----Original Message-----
>>>> From: vitek@... [mailto:vitek@...]
>>>> Sent: Thursday, July 03, 2008 5:26 PM
>>>> To: commits@...
>>>> Subject: svn commit: r673865 - in
>>>> /stdcxx/branches/4.3.x/tests/utilities: 20.forward.cpp
>>>> 20.tuple.cnstr.cpp 20.tuple.creation.cpp 20.tuple.elem.cpp
>>>> 20.tuple.helpers.cpp 20.tuple.rel.cpp
>>>>
>>>> Author: vitek
>>>> Date: Thu Jul  3 16:26:24 2008
>>>> New Revision: 673865
>>>>
>>> ...
>>>> Modified: stdcxx/branches/4.3.x/tests/utilities/20.tuple.cnstr.cpp
>>>> URL:
>>>> http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/tests/utili
>>>> ties/20.tuple.cnstr.cpp?rev=673865&r1=673864&r2=673865&view=diff
>>>> ==============================================================
>>>> ================
>>>> --- stdcxx/branches/4.3.x/tests/utilities/20.tuple.cnstr.cpp
>>>> (original)
>>>> +++ stdcxx/branches/4.3.x/tests/utilities/20.tuple.cnstr.cpp
>>>> Thu Jul  3 16:26:24 2008
>>>> @@ -29,7 +29,8 @@
>>>>  #include <rw_driver.h>
>>>>  
>>>>  // compile out all test code if extensions disabled
>>>> -#ifndef _RWSTD_NO_EXT_CXX_0X
>>>> +#if    !defined (_RWSTD_NO_EXT_CXX_0X) \
>>>> +    && !defined(_RWSTD_NO_RVALUE_REFERENCES)
>>> Just to verify, your reasoning for this is that C++0x
>>> extensions can be enabled but without support for rvalue references?
>>>
>>> If so, sounds reasonable.  Just wanted to double check.
>>>
>>> Brad.
>>>


RE: svn commit: r673865 - in /stdcxx/branches/4.3.x/tests/utilities: 20.forward.cpp 20.tuple.cnstr.cpp 20.tuple.creation.cpp 20.tuple.elem.cpp 20.tuple.helpers.cpp 20.tuple.rel.cpp

by Travis Vitek-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

 

>Eric Lemings wrote:
>
>I think there should be an implicit #define directive in <rw/_defs.h>:
>
> #if defined _RWSTD_NO_VARIADIC_TEMPLATES
>    //|| defined _RWSTD_NO_RVALUE_REFERENCES if actually
>required for C++0x extensions
> #  define _RWSTD_NO_EXT_CXX_0X
> #endif
>
>What does everyone think?
>

I think we're really asking what are the minimum requirements for us to
support our c++0x extensions on a given platform.

For simplicity, I think it would be nice to assume these features are
supported. It keeps the code (and tests) cleaner by not having to check
for each feature (as I recently did to the tuple tests). I hate having
to look at hacky workarounds unless they are absolutely necessary.

Travis

>Brad.
>
>> -----Original Message-----
>> From: Travis Vitek
>>
>>
>> Yes, I'm porting to aCC and none of the tuple tests compile
>> (lack of rvalue reference). Actually, now that I think about
>> it I should probably have added a check for variadic templates. Ugh.
>>
>> >-----Original Message-----
>> >From: Eric Lemings
>> >
>> >> -----Original Message-----
>> >> From: vitek@... [mailto:vitek@...]
>> >>
>> >> Author: vitek
>> >> Date: Thu Jul  3 16:26:24 2008
>> >> New Revision: 673865
>> >>
>> >...
>> >> Modified: stdcxx/branches/4.3.x/tests/utilities/20.tuple.cnstr.cpp
>> >> URL:
>> >> http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/tests/utili
>> >> ties/20.tuple.cnstr.cpp?rev=673865&r1=673864&r2=673865&view=diff
>> >> ==============================================================
>> >> ================
>> >> --- stdcxx/branches/4.3.x/tests/utilities/20.tuple.cnstr.cpp
>> >> (original)
>> >> +++ stdcxx/branches/4.3.x/tests/utilities/20.tuple.cnstr.cpp
>> >> Thu Jul  3 16:26:24 2008
>> >> @@ -29,7 +29,8 @@
>> >>  #include <rw_driver.h>
>> >>  
>> >>  // compile out all test code if extensions disabled
>> >> -#ifndef _RWSTD_NO_EXT_CXX_0X
>> >> +#if    !defined (_RWSTD_NO_EXT_CXX_0X) \
>> >> +    && !defined(_RWSTD_NO_RVALUE_REFERENCES)
>> >
>> >Just to verify, your reasoning for this is that C++0x
>> >extensions can be enabled but without support for rvalue references?
>> >
>> >If so, sounds reasonable.  Just wanted to double check.
>> >
>> >Brad.
>> >
>
LightInTheBox - Buy quality products at wholesale price