incubator-stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Travis Vitek" <Travis.Vi...@roguewave.com>
Subject RE: :decay related question
Date Wed, 18 Jun 2008 23:28:57 GMT
 

>Eric Lemings wrote:
> 
>Page 490, section 20.3.1.2, paragraph 1 in the latest draft says this:
> 
>"Let Ui be decay<Ti>::type for each Ti in Types. Then each Vi in VTypes
>is X& if Ui equals reference_wrapper<X>,
>otherwise Vi is Ui."
> 
>What do you suppose the relationship is between type `X' and types `Ti'
>and `Ui'?  I see how the latter two types are deduced from the 
>type list
>`Types' but not so sure about how type `X' is deduced from `Types'.

I'm looking at this and I have no idea where VTypes and X are coming
from. Is that an issue, or am I missing something?

That said, I think X is supposed to be Ti. If that were the case then
the definition would make some sense [at least to me].

  Let Ui be decay<Ti>::type for each Ti in Types. Then each
  Vi in VTypes is Ti& if Ui equals reference_wrapper<Ti>,
  otherwise Vi is Ui.

If that is right, then it essentially says that the 'make_tuple'
function transforms reference_wrapper<T> back to T& and for other types
does the normal decay transformation [function to funciton pointer,
array to array pointer, and cv-stripping of all other types].

Travis

> 
>Brad.
>

Mime
View raw message