Hello, assume the following definitions: public class C { public static void M1() { C x = new C(); x.M2(); } public void M2() { ... } } For this, mcs generates a "callvirt" for the call x.M2() in M1, but a "call" should be generated instead. Holger