Why destructor is called when going backward via goto
<blockquote>
  <p><strong>Possible Duplicate:</strong><br>
  <a href="http://stackoverflow.com/questions/7334952/will-using-goto-leak-variables">Will using <code>goto</code> leak variables?</a>  </p>
</blockquote>



<p>In the following example, when <code>goto</code> is called to go "backwards", the destructor of <code>A</code> is called. Why is it like that? Object <code>a</code> is not leaving its scope, is it? Does the standard say anything about this behavior regarding <code>goto</code>?</p>

<pre><code>void f()
{
start:
    A a;
    goto start;
}
</code></pre>
