[Issue 6404] Cannot check ref-ness of auto ref parameter in template constraint

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sun Jul 31 02:48:01 PDT 2011


http://d.puremagic.com/issues/show_bug.cgi?id=6404


Kenji Hara <k.hara.pg at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |


--- Comment #2 from Kenji Hara <k.hara.pg at gmail.com> 2011-07-31 02:47:58 PDT ---
Sorry my patch is incomplete, because it does not support auto ref tuple
parameter.

void rvalueVargs(T...)(auto ref T x) if (!__traits(isRef, x[0])) {}
void lvalueVargs(T...)(auto ref T x) if ( __traits(isRef, x[0])) {}
void test6404()
{
    int n;

    static assert(!__traits(compiles, rvalueVargs(n)));
    static assert( __traits(compiles, rvalueVargs(0)));

    static assert( __traits(compiles, lvalueVargs(n)));
    static assert(!__traits(compiles, lvalueVargs(0)));
}

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------


More information about the Digitalmars-d-bugs mailing list