diff --git a/lib/ftp.c b/lib/ftp.c
index 29004ead3171db321e0fa1a872d07bef9eaa7e3c..6645e8e44beec1a70790a0058f4d6f3b3a968199 100644
--- a/lib/ftp.c
+++ b/lib/ftp.c
@@ -445,7 +445,7 @@ CURLcode Curl_GetFTPResponse(ssize_t *nreadp, /* return number of bytes read */
   ssize_t gotbytes;
   char *ptr;
   long timeout;              /* timeout in milliseconds */
-  int interval_ms;
+  long interval_ms;
   struct SessionHandle *data = conn->data;
   char *line_start;
   int code=0; /* default ftp "error code" to return */
@@ -494,7 +494,7 @@ CURLcode Curl_GetFTPResponse(ssize_t *nreadp, /* return number of bytes read */
       if(timeout < interval_ms)
         interval_ms = timeout;
 
-      switch (Curl_select(sockfd, CURL_SOCKET_BAD, interval_ms)) {
+      switch (Curl_select(sockfd, CURL_SOCKET_BAD, (int)interval_ms)) {
       case -1: /* select() error, stop reading */
         result = CURLE_RECV_ERROR;
         failf(data, "FTP response aborted due to select() error: %d",
diff --git a/lib/http.c b/lib/http.c
index ad42273cdeb2f802abdee09bd08f5951692b6863..bca1197d863e00f6e79539add452b2137943e200 100644
--- a/lib/http.c
+++ b/lib/http.c
@@ -1234,7 +1234,7 @@ CURLcode Curl_proxyCONNECT(struct connectdata *conn,
 
       /* loop every second at least, less if the timeout is near */
       switch (Curl_select(tunnelsocket, CURL_SOCKET_BAD,
-                          check<1000?check:1000)) {
+                          check<1000L?(int)check:1000)) {
       case -1: /* select() error, stop reading */
         error = SELECT_ERROR;
         failf(data, "Proxy CONNECT aborted due to select() error");
diff --git a/lib/transfer.c b/lib/transfer.c
index 91e468b64e17a5ba2411bba0ec1ac6739e796d16..8281082049dbaaff21c59716103b8ace427d5cb2 100644
--- a/lib/transfer.c
+++ b/lib/transfer.c
@@ -1549,11 +1549,11 @@ CURLcode Curl_readwrite(struct connectdata *conn,
   if (data->set.timeout &&
       (Curl_tvdiff(k->now, k->start) >= data->set.timeout)) {
     if (k->size != -1) {
-      failf(data, "Operation timed out after %d milliseconds with %"
+      failf(data, "Operation timed out after %ld milliseconds with %"
             FORMAT_OFF_T " out of %" FORMAT_OFF_T " bytes received",
             data->set.timeout, k->bytecount, k->size);
     } else {
-      failf(data, "Operation timed out after %d milliseconds with %"
+      failf(data, "Operation timed out after %ld milliseconds with %"
             FORMAT_OFF_T " bytes received",
             data->set.timeout, k->bytecount);
     }