21.5
These patches are obviously harmless (they just tell the compiler that
we really mean to change the size of an integer that probably fits
into a byte in any case), but I wonder if this business of passing
around integers as pointers can maybe be rethought?
Comments?
Index: src/ChangeLog
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/src/ChangeLog,v
retrieving revision 1.1074
diff -u -r1.1074 ChangeLog
--- src/ChangeLog	22 Jun 2007 17:50:36 -0000	1.1074
+++ src/ChangeLog	29 Jun 2007 07:44:05 -0000
@@ -0,0 +1,12 @@
+2007-06-23  Stephen J. Turnbull  <stephen(a)xemacs.org>
+
+	* input-method-xlib.c (EmacsFreeXIMStyles):
+	* process.c (get_process_from_usid):
+	(init_process_io_handles):
+	(deactivate_process):
+	* process-unix.c (connect_to_file_descriptor):
+	(unix_create_process):
+	(unix_open_network_stream):
+	(unix_open_multicast_group):
+	Cast out bogus warnings about precision loss on amd64.
+
Index: src/input-method-xlib.c
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/src/input-method-xlib.c,v
retrieving revision 1.22
diff -u -r1.22 input-method-xlib.c
--- src/input-method-xlib.c	19 Jun 2006 18:19:37 -0000	1.22
+++ src/input-method-xlib.c	29 Jun 2007 07:44:06 -0000
@@ -713,7 +713,7 @@
 
   if (converter_data)
     {
-      Boolean free_p    = (Boolean) (int) converter_data;
+      Boolean free_p    = (Boolean) (EMACS_INT) converter_data;
       XIMStyles *styles = (XIMStyles *) toVal->addr;
       if (free_p)
         XFree ( styles->supported_styles );
Index: src/process-unix.c
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/src/process-unix.c,v
retrieving revision 1.59
diff -u -r1.59 process-unix.c
--- src/process-unix.c	22 Jun 2007 17:50:42 -0000	1.59
+++ src/process-unix.c	29 Jun 2007 07:44:06 -0000
@@ -189,7 +189,7 @@
 
   XPROCESS (proc)->pid = Fcons (infd, name);
   XPROCESS (proc)->buffer = buffer;
-  init_process_io_handles (XPROCESS (proc), (void *) inch,
+  init_process_io_handles (XPROCESS (proc), (void *) (EMACS_INT) inch,
 			   (void *) XINT (outfd), (void *) -1, 0);
   UNIX_DATA (XPROCESS (proc))->connected_via_filedesc_p = 1;
 
@@ -1121,8 +1121,9 @@
 
   /* Record this as an active process, with its channels.
      As a result, child_setup will close Emacs's side of the pipes.  */
-  init_process_io_handles (p, (void *) inchannel, (void *) outchannel,
-			   (void *) errchannel,
+  init_process_io_handles (p, (void *) (EMACS_INT) inchannel,
+			   (void *) (EMACS_INT) outchannel,
+			   (void *) (EMACS_INT) errchannel,
 			   pty_flag ? STREAM_PTY_FLUSHING : 0);
   /* Record the tty descriptor used in the subprocess.  */
   UNIX_DATA (p)->subtty = forkin;
@@ -2129,8 +2130,8 @@
 
   set_socket_nonblocking_maybe (inch, port, "tcp");
 
-  *vinfd = (void *) inch;
-  *voutfd = (void *) outch;
+  *vinfd = (void *) (EMACS_INT) inch;
+  *voutfd = (void *) (EMACS_INT) outch;
 }
 
 
@@ -2314,8 +2315,8 @@
 
   set_socket_nonblocking_maybe (rs, theport, "udp");
 
-  *vinfd = (void*)rs;
-  *voutfd = (void*)ws;
+  *vinfd = (void*) (EMACS_INT) rs;
+  *voutfd = (void*) (EMACS_INT) ws;
 }
 
 #endif /* HAVE_MULTICAST */
Index: src/process.c
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/src/process.c,v
retrieving revision 1.69
diff -u -r1.69 process.c
--- src/process.c	25 Oct 2005 11:16:27 -0000	1.69
+++ src/process.c	29 Jun 2007 07:44:06 -0000
@@ -242,7 +242,7 @@
 
   assert (usid != USID_ERROR && usid != USID_DONTHASH);
 
-  if (gethash ((const void*)usid, usid_to_process, &vval))
+  if (gethash ((const void*) (EMACS_INT) usid, usid_to_process, &vval))
     {
       Lisp_Object process;
       process = VOID_TO_LISP (vval);
@@ -573,15 +573,16 @@
     {
       Lisp_Object process = Qnil;
       process = wrap_process (p);
-      puthash ((const void*) in_usid, LISP_TO_VOID (process), usid_to_process);
+      puthash ((const void*) (EMACS_INT) in_usid,
+	       LISP_TO_VOID (process), usid_to_process);
     }
 
   if (err_usid != USID_DONTHASH)
     {
       Lisp_Object process = Qnil;
       process = wrap_process (p);
-      puthash ((const void*) err_usid, LISP_TO_VOID (process),
-	       usid_to_process);
+      puthash ((const void*) (EMACS_INT) err_usid,
+	       LISP_TO_VOID (process), usid_to_process);
     }
 
   MAYBE_PROCMETH (init_process_io_handles, (p, in, out, err, flags));
@@ -2150,9 +2151,9 @@
 				    &in_usid, &err_usid);
 
   if (in_usid != USID_DONTHASH)
-    remhash ((const void *) in_usid, usid_to_process);
+    remhash ((const void *) (EMACS_INT) in_usid, usid_to_process);
   if (err_usid != USID_DONTHASH)
-    remhash ((const void *) err_usid, usid_to_process);
+    remhash ((const void *) (EMACS_INT) err_usid, usid_to_process);
 
   p->pipe_instream = Qnil;
   p->pipe_outstream = Qnil;
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches