ext: Update pybind11 to v2.8.1
Change-Id: Ia1c7081377f53fd470addf35526f8b28a949a7b0 Signed-off-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/52523 Maintainer: Bobby R. Bruce <bbruce@ucdavis.edu> Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Gabe Black <gabe.black@gmail.com>
This commit is contained in:
committed by
Jason Lowe-Power
parent
ba5f68db3d
commit
1e8aeee698
@@ -9,7 +9,9 @@
|
||||
|
||||
|
||||
#include <pybind11/eval.h>
|
||||
|
||||
#include "pybind11_tests.h"
|
||||
#include <utility>
|
||||
|
||||
TEST_SUBMODULE(eval_, m) {
|
||||
// test_evals
|
||||
@@ -64,10 +66,10 @@ TEST_SUBMODULE(eval_, m) {
|
||||
auto local = py::dict();
|
||||
local["y"] = py::int_(43);
|
||||
|
||||
int val_out;
|
||||
int val_out = 0;
|
||||
local["call_test2"] = py::cpp_function([&](int value) { val_out = value; });
|
||||
|
||||
auto result = py::eval_file(filename, global, local);
|
||||
auto result = py::eval_file(std::move(filename), global, local);
|
||||
return val_out == 43 && result.is_none();
|
||||
});
|
||||
|
||||
@@ -96,4 +98,22 @@ TEST_SUBMODULE(eval_, m) {
|
||||
auto int_class = py::eval("isinstance(42, int)", global);
|
||||
return global;
|
||||
});
|
||||
|
||||
// test_eval_closure
|
||||
m.def("test_eval_closure", []() {
|
||||
py::dict global;
|
||||
global["closure_value"] = 42;
|
||||
py::dict local;
|
||||
local["closure_value"] = 0;
|
||||
py::exec(R"(
|
||||
local_value = closure_value
|
||||
|
||||
def func_global():
|
||||
return closure_value
|
||||
|
||||
def func_local():
|
||||
return local_value
|
||||
)", global, local);
|
||||
return std::make_pair(global, local);
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user