diff --git a/aegisub/auto4_perl.cpp b/aegisub/auto4_perl.cpp
index 5c17cc6ce582250d82b8d2b3ee66dd2be436ee8d..d35cdfa35ece4b9d5123329bc947696b15e31d33 100644
--- a/aegisub/auto4_perl.cpp
+++ b/aegisub/auto4_perl.cpp
@@ -468,12 +468,12 @@ namespace Automation4 {
 	ExitCode ec = NULL;
 	switch(type) {
 	case CALL:
-	  if(sv) ec = (ExitCode)call_sv(sv, flags);
-	  else if(pv) ec = (ExitCode)call_pv(pv, flags);
+	  if(sv) ec = (ExitCode)((size_t)call_sv(sv, flags));
+	  else if(pv) ec = (ExitCode)((size_t)call_pv(pv, flags));
 	  break;
 	case EVAL:
-	  if(sv) ec = (ExitCode)eval_sv(sv, flags);
-	  else if(pv) ec = (ExitCode)eval_pv(pv, flags);
+	  if(sv) ec = (ExitCode)((size_t)eval_sv(sv, flags));
+	  else if(pv) ec = (ExitCode)((size_t)eval_pv(pv, flags));
 	}
 
 	if(SvTRUE(ERRSV)) {