diff -u -r -x CVS old/curl/lib/config-win32.h curl/lib/config-win32.h
--- old/curl/lib/config-win32.h	Tue Aug 20 19:46:48 2002
+++ curl/lib/config-win32.h	Mon Aug 26 01:53:58 2002
@@ -202,7 +202,7 @@
  *This is to eliminate the warnings when compiled *
  * using MS VC++ compiler	  			  *
  **************************************************/
-#ifdef _MSC_VER
+#if 0
 
 #pragma warning (disable: 4244)	/* truncation from 'const int' to 'char' */
 #pragma warning (disable: 4127)	/* conditional expression is constant */
diff -u -r -x CVS old/curl/lib/connect.c curl/lib/connect.c
--- old/curl/lib/connect.c	Mon Aug 12 20:01:57 2002
+++ curl/lib/connect.c	Mon Aug 26 03:10:01 2002
@@ -602,7 +602,7 @@
            (struct in_addr *)remotehost->h_addr_list[aliasindex],
            sizeof(struct in_addr));
     serv_addr.sin_family = remotehost->h_addrtype;
-    serv_addr.sin_port = htons(port);
+    serv_addr.sin_port = htons((unsigned short)port);
   
     rc = connect(sockfd, (struct sockaddr *)&serv_addr,
                  sizeof(serv_addr));
diff -u -r -x CVS old/curl/lib/http.c curl/lib/http.c
--- old/curl/lib/http.c	Tue Jun 11 19:13:01 2002
+++ curl/lib/http.c	Mon Aug 26 03:08:38 2002
@@ -552,7 +552,7 @@
   if(data->cookies) {
     co = Curl_cookie_getlist(data->cookies,
                              host, ppath,
-                             conn->protocol&PROT_HTTPS?TRUE:FALSE);
+                             (conn->protocol&PROT_HTTPS?TRUE:FALSE));
   }
   if (data->change.proxy &&
       !data->set.tunnel_thru_httpproxy &&
diff -u -r -x CVS old/curl/lib/progress.c curl/lib/progress.c
--- old/curl/lib/progress.c	Mon Jun 03 20:46:04 2002
+++ curl/lib/progress.c	Mon Aug 26 02:06:48 2002
@@ -344,8 +344,8 @@
   /* If we have a total estimate, we can display that and the expected
      time left */
   if(total_estimate) {
-    time2str(time_left, total_estimate-(int) data->progress.timespent); 
-    time2str(time_total, total_estimate);
+    time2str(time_left, (int)(total_estimate - data->progress.timespent)); 
+    time2str(time_total, (int)total_estimate);
   }
   else {
     /* otherwise we blank those times */
@@ -353,7 +353,7 @@
     strcpy(time_total, "--:--:--");
   }
   /* The time spent so far is always known */
-  time2str(time_current, data->progress.timespent);
+  time2str(time_current, (int)data->progress.timespent);
 
   /* Get the total amount of data expected to get transfered */
   total_expected_transfer = 
diff -u -r -x CVS old/curl/lib/url.c curl/lib/url.c
--- old/curl/lib/url.c	Tue Aug 13 22:20:47 2002
+++ curl/lib/url.c	Mon Aug 26 03:11:10 2002
@@ -1349,7 +1349,7 @@
     memcpy((char *)&(conn->serv_addr.sin_addr),
            (struct in_addr *)addr, sizeof(struct in_addr));
     conn->serv_addr.sin_family = hostaddr->h_addrtype;
-    conn->serv_addr.sin_port = htons(conn->port);
+    conn->serv_addr.sin_port = htons((unsigned short)conn->port);
 #endif
   }
 
@@ -2078,7 +2078,7 @@
       }
 
       *tmp = '\0'; /* cut off the name there */
-      conn->remote_port = port;
+      conn->remote_port = (unsigned short)port;
     }
   }
 
diff -u -r -x CVS old/curl/src/main.c curl/src/main.c
--- old/curl/src/main.c	Tue Aug 13 20:12:08 2002
+++ curl/src/main.c	Mon Aug 26 03:20:33 2002
@@ -2011,32 +2011,32 @@
   char line[256];
   char outline[256];
   char format[40];
-  float frac;
-  float percent;
+  double frac;
+  double percent;
   int barwidth;
   int num;
   int i;
 
   struct ProgressData *bar = (struct ProgressData *)clientp;
-  size_t total = dltotal + ultotal;
+  double total = dltotal + ultotal;
 
   bar->point = dlnow + ulnow; /* we've come this far */
 
   bar->calls++; /* simply count invokes */
 
   if(0 == total) {
-    int prevblock = bar->prev / 1024;
-    int thisblock = bar->point / 1024;
+    int prevblock = (int)bar->prev / 1024;
+    int thisblock = (int)bar->point / 1024;
     while ( thisblock > prevblock ) {
       fprintf( bar->out, "#" );
       prevblock++;
     }
   }
   else {
-    frac = (float) bar->point / (float) total;
+    frac = bar->point / total;
     percent = frac * 100.0f;
     barwidth = bar->width - 7;
-    num = (int) (((float)barwidth) * frac);
+    num = (int) (((double)barwidth) * frac);
     i = 0;
     for ( i = 0; i < num; i++ ) {
       line[i] = '#';
