diff --git a/src/runtime/clrobject.cs b/src/runtime/clrobject.cs index 472e5dcbb..9f14c900a 100644 --- a/src/runtime/clrobject.cs +++ b/src/runtime/clrobject.cs @@ -11,7 +11,7 @@ internal CLRObject(object ob, IntPtr tp) { IntPtr py = Runtime.PyType_GenericAlloc(tp, 0); - var flags = (int)Marshal.ReadIntPtr(tp, TypeOffset.tp_flags); + var flags = (long)Marshal.ReadIntPtr(tp, TypeOffset.tp_flags); if ((flags & TypeFlags.Subclass) != 0) { IntPtr dict = Marshal.ReadIntPtr(py, ObjectOffset.DictOffset(tp)); diff --git a/src/runtime/debughelper.cs b/src/runtime/debughelper.cs index 777a61e35..f215a803a 100644 --- a/src/runtime/debughelper.cs +++ b/src/runtime/debughelper.cs @@ -89,7 +89,7 @@ internal static void DumpType(IntPtr type) internal static void DumpInst(IntPtr ob) { IntPtr tp = Runtime.PyObject_TYPE(ob); - var sz = (int)Marshal.ReadIntPtr(tp, TypeOffset.tp_basicsize); + var sz = (long)Marshal.ReadIntPtr(tp, TypeOffset.tp_basicsize); for (var i = 0; i < sz; i += IntPtr.Size) { diff --git a/src/runtime/managedtype.cs b/src/runtime/managedtype.cs index 9ee8d223b..842ef6a83 100644 --- a/src/runtime/managedtype.cs +++ b/src/runtime/managedtype.cs @@ -28,7 +28,7 @@ internal static ManagedType GetManagedObject(IntPtr ob) tp = ob; } - var flags = (int)Marshal.ReadIntPtr(tp, TypeOffset.tp_flags); + var flags = (long)Marshal.ReadIntPtr(tp, TypeOffset.tp_flags); if ((flags & TypeFlags.Managed) != 0) { IntPtr op = tp == ob @@ -63,7 +63,7 @@ internal static bool IsManagedType(IntPtr ob) tp = ob; } - var flags = (int)Marshal.ReadIntPtr(tp, TypeOffset.tp_flags); + var flags = (long)Marshal.ReadIntPtr(tp, TypeOffset.tp_flags); if ((flags & TypeFlags.Managed) != 0) { return true; diff --git a/src/runtime/metatype.cs b/src/runtime/metatype.cs index bfb71e26d..df896c985 100644 --- a/src/runtime/metatype.cs +++ b/src/runtime/metatype.cs @@ -247,7 +247,7 @@ public static void tp_dealloc(IntPtr tp) { // Fix this when we dont cheat on the handle for subclasses! - var flags = (int)Marshal.ReadIntPtr(tp, TypeOffset.tp_flags); + var flags = (long)Marshal.ReadIntPtr(tp, TypeOffset.tp_flags); if ((flags & TypeFlags.Subclass) == 0) { IntPtr gc = Marshal.ReadIntPtr(tp, TypeOffset.magic());