Local variable scope
<p>I would like to have some geek advice here since I can’t brainstorm more.</p>

<pre><code>class sampleType
    {
        public void M1(bool someValue)
        {
            if (someValue)
            {
                int a = 1;
                Console.WriteLine(a);
                goto comehere;
            }
            else
            {
                int a = 2;
                Console.WriteLine(a);
                goto comehere;
            }

        comehere:
            {
                int a = 3;
                Console.WriteLine(a);
            }
        }
    }
</code></pre>

<p><strong>Assumption:</strong> M1 is jitted and ready to execute. M1 is the last item in the thread stack (last register).</p>

<p><strong>Question:</strong> How current stack register denote local variables of M1? Especially scope of ‘a’ at if/else/goto block.</p>
