.assembly 'incr3' { } .assembly extern 'mscorlib' { .ver 1:0:5000:0 .publickeytoken = ( b7 7a 5c 56 19 34 e0 89 ) } .class 'T' extends [mscorlib]System.Object { .field static private int32 '_x' .property int32 x() { .get int32 'T'::'get_x'() .set void 'T'::'set_x'(int32) } // end of property T.x .method hidebysig specialname static private int32 'get_x'() { .locals init ([0]int32 't0') ldsfld int32 'T'::'_x' stloc 0 // t0 br $1 $1: ldloc 0 // t0 ret .maxstack 1 } // end of method T.get_x .method hidebysig specialname static private void 'set_x'(int32 'value') { ldarg 0 // value stsfld int32 'T'::'_x' ret .maxstack 1 } // end of method T.set_x .field private int32 '_y' .property instance int32 y() { .get instance int32 'T'::'get_y'() .set instance void 'T'::'set_y'(int32) } // end of property T.y .method hidebysig specialname private instance int32 'get_y'() { .locals init ([0]int32 't0') ldarg.0 ldfld int32 'T'::'_y' stloc 0 // t0 br $1 $1: ldloc 0 // t0 ret .maxstack 1 } // end of method T.get_y .method hidebysig specialname private instance void 'set_y'(int32 'value') { ldarg.0 ldarg 1 // value stfld int32 'T'::'_y' ret .maxstack 2 } // end of method T.set_y .method hidebysig static public void 'Main'() { .entrypoint call int32 'T'::'get_x'() ldc.i4 1 add .locals init ([0]int32 't0') stloc 0 // t0 ldloc 0 // t0 call void 'T'::'set_x'(int32) ldstr "{0}" call int32 'T'::'get_x'() dup ldc.i4.1 add .locals init ([1]int32 't1') stloc 1 // t1 ldloc 1 // t1 call void 'T'::'set_x'(int32) box int32 call void [mscorlib]System.Console::'WriteLine'(string,object) ldstr "{0}" call int32 'T'::'get_x'() ldc.i4.1 add .locals init ([2]int32 't2') stloc 2 // t2 ldloc 2 // t2 call void 'T'::'set_x'(int32) ldloc 2 // t2 box int32 call void [mscorlib]System.Console::'WriteLine'(string,object) .locals init ([3]int32 't3') .locals init ([4]int32 't4') ldc.i4 0 stloc 3 // u ldc.i4 1 stloc 4 // v newobj instance void 'T'::.ctor() ldloca 3 // u ldloca 4 // v call void 'T'::'f'(class 'T',int32&,int32&) ldstr "{0} {1}" ldloc 3 // u box int32 ldloc 4 // v box int32 call void [mscorlib]System.Console::'WriteLine'(string,object,object) ret .maxstack 4 } // end of method T.Main .method hidebysig static private void 'f'(class 'T' 'o',int32& 'a',int32& 'b') { ldarg 1 // a ldarg 0 // o call instance int32 'T'::'get_y'() ldc.i4 1 add .locals init ([0]int32 't0') stloc 0 // t0 ldarg 0 // o ldloc 0 // t0 call instance void 'T'::'set_y'(int32) ldloc 0 // t0 stind.i4 ldstr "{0}" ldarg 0 // o call instance int32 'T'::'get_y'() dup ldc.i4.1 add .locals init ([1]int32 't1') stloc 1 // t1 ldarg 0 // o ldloc 1 // t1 call instance void 'T'::'set_y'(int32) box int32 call void [mscorlib]System.Console::'WriteLine'(string,object) ldstr "{0}" ldarg 0 // o call instance int32 'T'::'get_y'() ldc.i4.1 add .locals init ([2]int32 't2') stloc 2 // t2 ldarg 0 // o ldloc 2 // t2 call instance void 'T'::'set_y'(int32) ldloc 2 // t2 box int32 call void [mscorlib]System.Console::'WriteLine'(string,object) ldarg 2 // b ldc.i4 0 stind.i4 ret .maxstack 4 } // end of method T.f .method hidebysig specialname rtspecialname public void .ctor() { ldarg.0 call instance void [mscorlib]System.Object::.ctor() ret .maxstack 1 } // end of constructor T.T } // end of class T