struct Test { int i; alias i this; }
auto testFunct( Test i){ }
void main() {
     Test t;
     t = 1;
     testFunct( 1);
}
The assignment is fine, but the call is rejected by dmd.
See also
http://forum.dlang.org/post/fqfonkcdcjuwbaacqshe@forum.dlang.org