title: How deallocation of allocated objects occur when an exception occurs in swift?
body: <p>According to the docs,</p>
  
  <p>error handling in Swift does not involve unwinding the call stack, a process that can be computationally expensive.</p>
  
  <p>Then how deallocation of objects happen?
  Example:- class A is having 'a' method, Class B is having 'b' method and Class C is having 'c' method.</p>
  
  <p>a called b and b called c.
  When Exception occurred in c how deallocation of A,B,C objects happen?</p>