From 640d0b7cc0886cc6a04efb6b353f2311cd0ffd55 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 16 Jul 2026 11:23:35 +0000 Subject: [PATCH 1/2] Initial plan From 5634d46dec2a77142173db9a19974bdce8e3dfcb Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 16 Jul 2026 11:30:42 +0000 Subject: [PATCH 2/2] Fix stubtest build failure from removed SVF const-aggregate types --- pybind/SVFIR.cpp | 25 ------------------------- pysvf/__init__.py | 2 -- pysvf/pysvf.pyi | 24 ------------------------ stubtest_allowlist.txt | 2 -- 4 files changed, 53 deletions(-) diff --git a/pybind/SVFIR.cpp b/pybind/SVFIR.cpp index 78f7ef5..c09f76a 100644 --- a/pybind/SVFIR.cpp +++ b/pybind/SVFIR.cpp @@ -402,13 +402,6 @@ void bind_svf_var(py::module &m) { return SVFUtil::dyn_cast(node); }, py::return_value_policy::reference) - .def("isConstAggValVar", [](SVF::ValVar* node) -> bool { - return SVFUtil::isa(node); - }) - .def("asConstAggValVar", [](SVF::ValVar* node) -> SVF::ConstAggValVar* { - return SVFUtil::dyn_cast(node); - }, py::return_value_policy::reference) - .def("isConstDataValVar", [](SVF::ValVar* node) -> bool { return SVFUtil::isa(node); }) @@ -532,12 +525,6 @@ void bind_svf_var(py::module &m) { .def("asStackObjVar", [](SVF::ObjVar* node) -> SVF::StackObjVar* { return SVFUtil::dyn_cast(node); }, py::return_value_policy::reference) - .def("isConstAggObjVar", [](SVF::ObjVar* node) -> bool { - return SVFUtil::isa(node); - }, py::return_value_policy::reference) - .def("asConstAggObjVar", [](SVF::ObjVar* node) -> SVF::ConstAggObjVar* { - return SVFUtil::dyn_cast(node); - }, py::return_value_policy::reference) .def("isConstDataObjVar", [](SVF::ObjVar* node) -> bool { return SVFUtil::isa(node); }, py::return_value_policy::reference) @@ -662,12 +649,6 @@ void bind_svf_var(py::module &m) { .def("asStackObjVar", [](SVF::BaseObjVar* node) -> SVF::StackObjVar* { return SVFUtil::dyn_cast(node); }, py::return_value_policy::reference) - .def("isConstAggObjVar", [](SVF::BaseObjVar* node) -> bool { - return SVFUtil::isa(node); - }, py::return_value_policy::reference) - .def("asConstAggObjVar", [](SVF::BaseObjVar* node) -> SVF::ConstAggObjVar* { - return SVFUtil::dyn_cast(node); - }, py::return_value_policy::reference) .def("isConstDataObjVar", [](SVF::BaseObjVar* node) -> bool { return SVFUtil::isa(node); }, py::return_value_policy::reference) @@ -743,9 +724,6 @@ void bind_svf_var(py::module &m) { /// GlobalValVar py::class_(m, "GlobalValVar"); - ///ConstAggValVar - py::class_(m, "ConstAggValVar"); - ///ConstDataValVar py::class_(m, "ConstDataValVar"); @@ -767,9 +745,6 @@ void bind_svf_var(py::module &m) { ///GlobalObjVar py::class_(m, "GlobalObjVar"); - ///ConstAggObjVar - py::class_(m, "ConstAggObjVar"); - ///ConstDataObjVar py::class_(m, "ConstDataObjVar"); diff --git a/pysvf/__init__.py b/pysvf/__init__.py index 1d093d0..246367b 100644 --- a/pysvf/__init__.py +++ b/pysvf/__init__.py @@ -142,14 +142,12 @@ def main(): FunObjVar, FunValVar, GlobalValVar, - ConstAggValVar, ConstDataValVar, BlackHoleValVar, ConstFPValVar, ConstIntValVar, ConstNullPtrValVar, GlobalObjVar, - ConstAggObjVar, ConstDataObjVar, ConstFPObjVar, ConstIntObjVar, diff --git a/pysvf/pysvf.pyi b/pysvf/pysvf.pyi index 597c4d1..dafc5ee 100644 --- a/pysvf/pysvf.pyi +++ b/pysvf/pysvf.pyi @@ -783,10 +783,6 @@ class ValVar(SVFVar): """Check if the SVF variable is a GlobalValVar""" def asGlobalValVar(self) -> "GlobalValVar": ... """Downcast the SVF variable to a GlobalValVar""" - def isConstAggValVar(self) -> bool: ... - """Check if the SVF variable is a ConstAggValVar""" - def asConstAggValVar(self) -> "ConstAggValVar": ... - """Downcast the SVF variable to a ConstAggValVar""" def isConstDataValVar(self) -> bool: ... """Check if the SVF variable is a ConstDataValVar""" def asConstDataValVar(self) -> "ConstDataValVar": ... @@ -858,9 +854,6 @@ class ObjVar(SVFVar): def asFunObjVar(node: "ObjVar") -> "FunObjVar": ... """Downcast the SVF variable to a FunObjVar""" - def isConstAggObjVar(self) -> bool: ... - """Check if this is a constant aggregate object variable""" - def isConstDataObjVar(self) -> bool: ... """Check if this is a constant data object variable""" @@ -882,9 +875,6 @@ class ObjVar(SVFVar): def isStackObjVar(self) -> bool: ... """Check if this is a stack object variable""" - def asConstAggObjVar(self) -> "ConstAggObjVar": ... - """Cast to ConstAggObjVar if possible""" - def asConstDataObjVar(self) -> "ConstDataObjVar": ... """Cast to ConstDataObjVar if possible""" @@ -973,10 +963,6 @@ class BaseObjVar(ObjVar): """Check if the SVF variable is a StackObjVar""" def asStackObjVar(self) -> "StackObjVar": ... """Downcast the SVF variable to a StackObjVar""" - def isConstAggObjVar(self) -> bool: ... - """Check if the SVF variable is a ConstAggObjVar""" - def asConstAggObjVar(self) -> "ConstAggObjVar": ... - """Downcast the SVF variable to a ConstAggObjVar""" def isConstDataObjVar(self) -> bool: ... """Check if the SVF variable is a ConstDataObjVar""" def asConstDataObjVar(self) -> "ConstDataObjVar": ... @@ -1388,11 +1374,6 @@ class DummyValVar(ValVar): -class ConstAggValVar(ValVar): - def __init__(self, *args, **kwargs) -> None: ... - """Not intended for direct instantiation.""" - - class BlackHoleValVar(ValVar): def __init__(self, *args, **kwargs) -> None: ... """Not intended for direct instantiation.""" @@ -1409,11 +1390,6 @@ class GlobalObjVar(BaseObjVar): """Not intended for direct instantiation.""" -class ConstAggObjVar(BaseObjVar): - def __init__(self, *args, **kwargs) -> None: ... - """Not intended for direct instantiation.""" - - class ConstNullPtrObjVar(ConstDataObjVar): def __init__(self, *args, **kwargs) -> None: ... """Not intended for direct instantiation.""" diff --git a/stubtest_allowlist.txt b/stubtest_allowlist.txt index 6aba433..da715e8 100644 --- a/stubtest_allowlist.txt +++ b/stubtest_allowlist.txt @@ -46,8 +46,6 @@ pysvf.CallPE pysvf.CmpStmt pysvf.CmpVFGNode pysvf.CmpVFGNode.__init__ -pysvf.ConstAggObjVar -pysvf.ConstAggValVar pysvf.ConstDataObjVar pysvf.ConstDataValVar pysvf.ConstFPObjVar