diff options
author | Miodrag Milanovic <mmicko@gmail.com> | 2020-07-23 20:20:26 +0200 |
---|---|---|
committer | Miodrag Milanovic <mmicko@gmail.com> | 2020-07-23 20:20:26 +0200 |
commit | 8a90328ab7e1958d5e33f2961ad65c35682d9ce6 (patch) | |
tree | 0f4b427504a310a0bbd57185355dcd9e44ea720b | |
parent | cca7d3aef7e97228bddc04601e5c6f1d03894be9 (diff) | |
download | nextpnr-8a90328ab7e1958d5e33f2961ad65c35682d9ce6.tar.gz nextpnr-8a90328ab7e1958d5e33f2961ad65c35682d9ce6.tar.bz2 nextpnr-8a90328ab7e1958d5e33f2961ad65c35682d9ce6.zip |
proper ctx export
-rw-r--r-- | common/pybindings.cc | 2 | ||||
-rw-r--r-- | common/pybindings.h | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/common/pybindings.cc b/common/pybindings.cc index 49acb996..e1a7d313 100644 --- a/common/pybindings.cc +++ b/common/pybindings.cc @@ -145,7 +145,7 @@ PYBIND11_MODULE(MODULE_NAME, m) typedef std::unordered_map<IdString, IdString> IdIdMap; typedef std::unordered_map<IdString, std::unique_ptr<Region>> RegionMap; - py::class_<BaseCtx, std::unique_ptr<BaseCtx, py::nodelete>>(m, "BaseCtx"); + py::class_<BaseCtx>(m, "BaseCtx"); auto loc_cls = py::class_<Loc>(m, "Loc") .def(py::init<int, int, int>()) diff --git a/common/pybindings.h b/common/pybindings.h index 4923c821..e143ddf4 100644 --- a/common/pybindings.h +++ b/common/pybindings.h @@ -45,7 +45,7 @@ template <typename Tn> void python_export_global(const char *name, Tn &x) return; d = PyModule_GetDict(m); try { - py::object obj = py::cast(x); + py::object obj = py::cast(x, py::return_value_policy::reference); PyDict_SetItemString(d, name, obj.ptr()); } catch (py::error_already_set const &) { // Parse and output the exception |