blob: df3f43a18b3a2df1aedfb792ffbd68a55d926557 [file] [log] [blame]
/* TEST_OUTPUT:
---
fail_compilation/aliasassign1.d(106): Error: A was read, so cannot reassign
fail_compilation/aliasassign1.d(110): Error: template instance `aliasassign1.staticMap!(Unqual, int, const(uint))` error instantiating
fail_compilation/aliasassign1.d(112): Error: static assert: `is(TK == AliasSeq!(int, uint))` is false
---
*/
template AliasSeq(T...) { alias AliasSeq = T; }
template Unqual(T)
{
static if (is(T U == const U))
alias Unqual = U;
else static if (is(T U == immutable U))
alias Unqual = U;
else
alias Unqual = T;
}
#line 100
template staticMap(alias F, T...)
{
alias A = AliasSeq!();
alias B = A;
static foreach (t; T)
A = AliasSeq!(A, F!t); // what's tested
alias staticMap = A;
}
alias TK = staticMap!(Unqual, int, const uint);
//pragma(msg, TK);
static assert(is(TK == AliasSeq!(int, uint)));