This revision was automatically updated to reflect the committed changes. Closed by commit rG40b0fa7ef212: [LLDB][formatters] ArgInfo::count -> ArgInfo::max_positional_args (authored by lawrence_danna).
Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69469/new/ https://reviews.llvm.org/D69469 Files: lldb/scripts/Python/python-wrapper.swig Index: lldb/scripts/Python/python-wrapper.swig =================================================================== --- lldb/scripts/Python/python-wrapper.swig +++ lldb/scripts/Python/python-wrapper.swig @@ -495,11 +495,17 @@ if (!pfunc.IsAllocated()) return 0; + auto arg_info = pfunc.GetArgInfo(); + if (!arg_info) { + llvm::consumeError(arg_info.takeError()); + return 0; + } + PythonObject result; - auto argc = pfunc.GetNumArguments(); - if (argc.count == 1) + + if (arg_info.get().max_positional_args < 1) result = pfunc(); - else if (argc.count == 2) + else result = pfunc(PythonInteger(max)); if (!result.IsAllocated()) @@ -511,13 +517,13 @@ size_t ret_val = int_result.GetInteger(); - if (PyErr_Occurred()) + if (PyErr_Occurred()) //FIXME use Expected to catch python exceptions { PyErr_Print(); PyErr_Clear(); } - if (argc.count == 1) + if (arg_info.get().max_positional_args < 1) ret_val = std::min(ret_val, static_cast<size_t>(max)); return ret_val;
Index: lldb/scripts/Python/python-wrapper.swig =================================================================== --- lldb/scripts/Python/python-wrapper.swig +++ lldb/scripts/Python/python-wrapper.swig @@ -495,11 +495,17 @@ if (!pfunc.IsAllocated()) return 0; + auto arg_info = pfunc.GetArgInfo(); + if (!arg_info) { + llvm::consumeError(arg_info.takeError()); + return 0; + } + PythonObject result; - auto argc = pfunc.GetNumArguments(); - if (argc.count == 1) + + if (arg_info.get().max_positional_args < 1) result = pfunc(); - else if (argc.count == 2) + else result = pfunc(PythonInteger(max)); if (!result.IsAllocated()) @@ -511,13 +517,13 @@ size_t ret_val = int_result.GetInteger(); - if (PyErr_Occurred()) + if (PyErr_Occurred()) //FIXME use Expected to catch python exceptions { PyErr_Print(); PyErr_Clear(); } - if (argc.count == 1) + if (arg_info.get().max_positional_args < 1) ret_val = std::min(ret_val, static_cast<size_t>(max)); return ret_val;
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits