Fix type caster for heap reference types
Need to use the intrinsic type, not the raw type.
Fixes #392.
diff --git a/tests/test_issues.py b/tests/test_issues.py
index c1e0756..056737a 100644
--- a/tests/test_issues.py
+++ b/tests/test_issues.py
@@ -166,3 +166,17 @@
assert m2.value == 2
m1 = get_moveissue1(1)
assert m1.value == 1
+
+def test_override_ref():
+ from pybind11_tests.issues import OverrideTest
+ o = OverrideTest(42)
+
+ i = o.int_ref()
+ assert o.int_value() == 42
+ assert o.int_ref() == 42
+
+ assert o.A_value().value == 99
+ a = o.A_ref()
+ assert a.value == 99
+ a.value = 7
+ assert a.value == 7