blueloveTH 2 ani în urmă
părinte
comite
93ef42e1d0
2 a modificat fișierele cu 9 adăugiri și 1 ștergeri
  1. 1 1
      src/vm.h
  2. 8 0
      tests/40_class.py

+ 1 - 1
src/vm.h

@@ -286,7 +286,7 @@ public:
 
     template<typename T, typename __T>
     void bind_default_constructor(__T&& type) {
-        bind_constructor<1>(std::forward<__T>(type), [](VM* vm, ArgsView args){
+        bind_constructor<-1>(std::forward<__T>(type), [](VM* vm, ArgsView args){
             Type t = OBJ_GET(Type, args[0]);
             return vm->heap.gcnew<T>(t, T());
         });

+ 8 - 0
tests/40_class.py

@@ -91,3 +91,11 @@ class B(A):
 # assert B.a == 1  ...bug here
 assert B.b == 3
 assert B.c == 4
+
+from c import void_p
+
+class A(void_p):
+    pass
+    
+a = A()
+assert repr(a) == '<void* at (nil)>'