================
@@ -322,3 +322,24 @@
ScriptedPythonInterface::ExtractValueFromPythonObject<lldb::ValueObjectListSP>(
return out;
}
+
+template <>
+std::optional<lldb::ValueType>
+ScriptedPythonInterface::ExtractValueFromPythonObject<
+ std::optional<lldb::ValueType>>(python::PythonObject &p, Status &error) {
+ if (p.IsNone())
+ return std::nullopt;
+
+ llvm::Expected<unsigned long long> val = p.AsUnsignedLongLong();
+ if (!val) {
+ error = Status::FromError(val.takeError());
+ return std::nullopt;
+ }
+ if (*val > std::numeric_limits<std::underlying_type_t<ValueType>>::max()) {
----------------
bzcheeseman wrote:
This seems wrong, I think you want to use the ValueType max not the underlying
type max value.
https://github.com/llvm/llvm-project/pull/204431
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits