Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- namespace TailTest
- {
- class MainClass
- {
- public static void Main (string[] args)
- {
- Counter(0);
- }
- static void Counter(int i)
- {
- Console.WriteLine(i);
- if (i < int.MaxValue) Counter(++i);
- }
- }
- }
- .method private static hidebysig default void Counter (int32 i) cil managed
- {
- .maxstack 8
- IL_0000: ldarg.0
- IL_0001: call void class [mscorlib]System.Console::WriteLine(int32)
- IL_0006: ldarg.0
- IL_0007: ldc.i4 2147483647
- IL_000c: bge IL_0019
- IL_0011: ldarg.0
- IL_0012: ldc.i4.1
- IL_0013: add
- IL_0014: call void class TailTest.MainClass::Counter(int32)
- IL_0019: ret
- }
- .method private static hidebysig default void Counter (int32 i) cil managed
- {
- .maxstack 8
- IL_0000: ldarg.0
- IL_0001: call void class [mscorlib]System.Console::WriteLine(int32)
- IL_0006: ldarg.0
- IL_0007: ldc.i4 2147483647
- IL_000c: bge IL_001c
- IL_0011: ldarg.0
- IL_0012: ldc.i4.1
- IL_0013: add
- IL_0014: tail.
- IL_0017: call void class TailTest.MainClass::Counter(int32)
- IL_001c: ret
- }
Add Comment
Please, Sign In to add comment