diff --git a/src/object.c b/src/object.c
index fff835e26f5b75adf7f5de1b1a49aac9ec24fd7d..d8ab53080daec06998f2e1fa0e16390f37b4c55c 100644
--- a/src/object.c
+++ b/src/object.c
@@ -480,7 +480,7 @@ static struct pike_string *low_read_file(const char *file)
     check_threads_etc();
   if(f >= 0)
   {
-    ptrdiff_t tmp, pos = 0;
+    PIKE_OFF_T tmp, pos = 0;
 
     len = fd_lseek(f, 0, SEEK_END);
     fd_lseek(f, 0, SEEK_SET);