Commit 184482af authored by Corbin Simpson's avatar Corbin Simpson

ExprNodes: Add C++ error handling for std::invalid_argument.

Also expand comments slightly.
parent f1d781a6
......@@ -7050,8 +7050,13 @@ static void __Pyx_CppExn2PyErr() {
; // let the latest Python exn pass through and ignore the current one
else
throw;
} catch (const std::invalid_argument& exn) {
// Catch a handful of different errors here and turn them into the
// equivalent Python errors.
// Change invalid_argument to ValueError
PyErr_SetString(PyExc_ValueError, exn.what());
} catch (const std::out_of_range& exn) {
// catch out_of_range explicitly so the proper Python exn may be raised
// Change out_of_range to IndexError
PyErr_SetString(PyExc_IndexError, exn.what());
} catch (const std::exception& exn) {
PyErr_SetString(PyExc_RuntimeError, exn.what());
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment