Exceptions can be used to indicate many kinds of errors, not just allocation failures.