Exception Safety in STLport

by Dave Abrahams

Basic Library Guarantees

STLport makes the guarantee that no resources are leaked in the face of exceptions.

This means:

  • By the time a container's destructor completes:
    • It has returned all memory it has allocated to the appropriate deallocation function.
    • The destructor has been called for all objects constructed by the container.
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Algorithms destroy all temporary objects and deallocate
  • Alg