diff --git a/epicardium/api/caller.c b/epicardium/api/caller.c
index f2f5643abb62e6497c19e7e831ccd1ad1a60525f..8e61b674b4179832223f1c85adafca137c2ea113 100644
--- a/epicardium/api/caller.c
+++ b/epicardium/api/caller.c
@@ -109,7 +109,7 @@ int api_fetch_args(char *buf, size_t cnt)
 		return 0;
 	}
 
-	int i;
+	size_t i;
 	for (i = 0; i < cnt && API_CALL_MEM->buffer[i + 0x20] != '\0'; i++) {
 		buf[i] = API_CALL_MEM->buffer[i + 0x20];
 	}
diff --git a/epicardium/api/dispatcher.c b/epicardium/api/dispatcher.c
index 4ffac4220a9aa0ed473a5e7cf911cb092a7135d0..20d873f2c2f6458f79991660594d9eae8001e461 100644
--- a/epicardium/api/dispatcher.c
+++ b/epicardium/api/dispatcher.c
@@ -86,7 +86,7 @@ void api_prepare_args(char *args)
 	 * collide with any integer return value of API calls like epic_exec().
 	 */
 	API_CALL_MEM->id = 0;
-	for (int i = 0; i <= strlen(args); i++) {
+	for (size_t i = 0; i <= strlen(args); i++) {
 		API_CALL_MEM->buffer[i + 0x20] = args[i];
 	}
 }
diff --git a/epicardium/api/interrupt-sender.c b/epicardium/api/interrupt-sender.c
index d531846d89fcdfaf634d1d0fa355d057a9125db3..5117bea201e2e866e606e42cb8639ed48c162513 100644
--- a/epicardium/api/interrupt-sender.c
+++ b/epicardium/api/interrupt-sender.c
@@ -11,7 +11,7 @@ int api_interrupt_trigger(api_int_id_t id)
 	}
 
 	if (int_enabled[id]) {
-		while (API_CALL_MEM->int_id != (-1))
+		while (API_CALL_MEM->int_id != (api_int_id_t)(-1))
 			;
 
 		API_CALL_MEM->int_id = id;