diff --git a/code/qcommon/qcommon.h b/code/qcommon/qcommon.h
index 381da64c..5838bf75 100644
--- a/code/qcommon/qcommon.h
+++ b/code/qcommon/qcommon.h
@@ -357,10 +357,10 @@ void	*VM_ExplicitArgPtr( vm_t *vm, intptr_t intValue );
 static ID_INLINE float _vmf(intptr_t x)
 {
 	union {
-		intptr_t l;
+		int i;
 		float f;
 	} t;
-	t.l = x;
+	t.i = (int)x;
 	return t.f;
 }
 #define	VMF(x)	_vmf(args[x])