title: Is code with try-catch-rethrow equivalent to code w/o try-catch?
body: <p>Under which circumstances are the following two codes not equivalent?</p>
  
  <pre><code>{
    // some code, may throw and/or have side effects
  }
  
  try {
    // same code as above
  } catch(...) {
    throw;
  }
  </code></pre>
  
  <hr>
  
  <p><strong>edit</strong> Just to clarify, I'm not interested in (i) deviations from above pattern (such as more code in the catch block) nor (ii) intended to invite patronising comments about the proper usage of <code>try</code>-<code>catch</code> blocks.</p>
  
  <p>I'm looking for a qualified answer referring to the C++ standard. This question was prompted by a comment by <a href="https://stackoverflow.com/users/464581/cheers-and-hth-alf">Cheers and hth. - Alf</a> to <a href="https://stackoverflow.com/a/33688702/1023390">this answer of mine</a>, stating w/o further explanation that above codes are <em>not equivalent</em>.</p>
  
  <hr>
  
  <p><strong>edit</strong> they are indeed different. stack un-winding will be done in the latter, but not necessarily in the former, depending on whether an exception handler (some <code>catch</code> block higher up the stack) is found at run time.</p>