>>781
import std.stdio;
import std.contracts;
class A {
    int i = 0;
    immutable void immutableMemberFunction() { writeln("immutableMemberFunction, i=", i); }
}
void main() {
    auto a = new A;
    a.i = 100;
    immutable b = cast(immutable)a;
    a = null;
    b.immutableMemberFunction();
}
こういう場合があるため、それは不適当と判断しました。