diff --git a/src/errors.h b/src/errors.h
index e5c0c3d742e57b28b0a978f44a8829bca0dc2c28..b74f3a2f5f19413e210f3030913ab5c47feb83af 100644
--- a/src/errors.h
+++ b/src/errors.h
@@ -3,7 +3,7 @@
 #ifdef ERR_DECLARE
 #define DECLARE_ERROR(NAME, INHERIT, DECL) \
 struct program *PIKE_CONCAT(NAME,_error_program); \
-int PIKE_CONCAT(NAME,_error_offset); 
+ptrdiff_t PIKE_CONCAT(NAME,_error_offset); 
 
 #define ERR_VAR(TYPE,CTYPE,RUNTYPE,NAME) TYPE NAME ;
 #endif