July 26, 2005
template Outer( T, size_t sizeofT : int.sizeof = T.sizeof )
{
template fn( int val : 0 )
{
T fn( inout T val )
{
return val;
}
}

template fn( int val : 1 )
{
T fn( inout T val )
{
return .Outer!(T, size_t).fn!(0)( val );
}
}
}


void main()
{
Outer!(int).fn!(1)( i );
}