Change from throwing a Box* to an ExcInfo triple
ExcInfo is a triple of exc_type, exc_value, exc_traceback - analogous to Python's sys.exc_info(). Previously, we were just throwing exc_value. I still don't understand all the rules for when type(exc_value) is not necessarily exc_type. But this also makes it easier to pass exc_traceback around, and should make it possible to make our handling more consistent. This commit just changes the runtime; the generated code currently still expects a Box* to be thrown and will crash.
Showing
Please register or sign in to comment