2007-01-13 Eli Zaretskii <eliz@gnu.org>
+ * process.c (Fdelete_process, Fprocess_id, sigchld_handler): Copy
+ PID into EMACS_INT to avoid GCC warnings.
+
* fns.c (maybe_resize_hash_table): Copy new size of hash table
into EMACS_INT to avoid GCC warnings.
{
#ifdef SIGCHLD
Lisp_Object symbol;
+ /* Assignment to EMACS_INT stops GCC whining about limited range
+ of data type. */
+ EMACS_INT pid = p->pid;;
/* No problem storing the pid here, as it is still in Vprocess_alist. */
- deleted_pid_list = Fcons (make_fixnum_or_float (p->pid),
+ deleted_pid_list = Fcons (make_fixnum_or_float (pid),
/* GC treated elements set to nil. */
Fdelq (Qnil, deleted_pid_list));
/* If the process has already signaled, remove it from the list. */
if (CONSP (p->status))
symbol = XCAR (p->status);
if (EQ (symbol, Qsignal) || EQ (symbol, Qexit))
- Fdelete (make_fixnum_or_float (p->pid), deleted_pid_list);
+ Fdelete (make_fixnum_or_float (pid), deleted_pid_list);
else
#endif
{
(process)
register Lisp_Object process;
{
+ /* Assignment to EMACS_INT stops GCC whining about limited range of
+ data type. */
+ EMACS_INT pid;
+
CHECK_PROCESS (process);
- return (XPROCESS (process)->pid
- ? make_fixnum_or_float (XPROCESS (process)->pid)
- : Qnil);
+ pid = XPROCESS (process)->pid;
+ return (pid ? make_fixnum_or_float (pid) : Qnil);
}
DEFUN ("process-name", Fprocess_name, Sprocess_name, 1, 1, 0,
while (1)
{
- register int pid;
+ register EMACS_INT pid;
WAITTYPE w;
Lisp_Object tail;