Here they are again.
Thanks,
Barry deFreese
2008-07-19 Barry deFreese <[EMAIL PROTECTED]>
* chips/busses.h (struct bus_ctlr): *intr return void instead of int.
* i386/i386/ipl.h (ivect[]): return void instead of int.
* i386/i386at/pic_isa.h (ivect[]): Likewise.
* i386/i386at/kd_mouse.c (mouseintr): Likewise.
* i386/i386at/com.c (comintr): Likewise.
* i386/i386at/kd.c (kdcnputc, kdstart, kdintr): Likewise.
* i386/i386/trap.c (exception, thread_exception_return, i386_exception):
Add __attribute__ ((noreturn)).
* i386/i386at/kd.c (kdcnputc, kdstart, kdintr): Return void instead
of int. (kdstop, kdcnprobe): Return 0 at end of function.
* i386/i386at/lpr.c (lprintr, lprstart): Return void instead of int.
(lprstart): Don't return numeric values any longer.
* kern/eventcount.c (evc_wait_clear): Return a value.
* kern/exceptions.c (exception, exception_try_task,
exception_no_server,
exception_raise, exception_raise_continue,
exception_raise_continue_slow,
exception_raise_continue_fast): Add __attribute__ ((noreturn)).
(exception, exceptio_try_task, exception_raise,
exception_raise_continue_slow, exception_raise_continue_fast):
Remove spurious returns.
(exception_no_server): Add panic() on return from thread_halt_self().
? INSTALL
? Makefile.in
? aclocal.m4
? autom4te.cache
? build-aux
? config.h.in
? configure
? doc/mach.info
? doc/mach.info-1
? doc/mach.info-2
? doc/stamp-vti
? doc/version.texi
Index: chips/busses.h
===================================================================
RCS file: /sources/hurd/gnumach/chips/Attic/busses.h,v
retrieving revision 1.1.1.1.4.1
diff -u -p -r1.1.1.1.4.1 busses.h
--- chips/busses.h 30 Apr 2007 20:30:10 -0000 1.1.1.1.4.1
+++ chips/busses.h 22 Jul 2008 01:38:43 -0000
@@ -73,7 +73,7 @@ struct bus_ctlr {
struct bus_driver *driver; /* myself, as a device */
char *name; /* readability */
int unit; /* index in driver */
- int (*intr)(); /* interrupt handler(s) */
+ void (*intr)(); /* interrupt handler(s) */
vm_offset_t address; /* device virtual address */
int am; /* address modifier */
vm_offset_t phys_address;/* device phys address */
@@ -93,7 +93,7 @@ struct bus_device {
struct bus_driver *driver; /* autoconf info */
char *name; /* my name */
int unit;
- int (*intr)();
+ void (*intr)();
vm_offset_t address; /* device address */
int am; /* address modifier */
vm_offset_t phys_address;/* device phys address */
Index: i386/i386/ipl.h
===================================================================
RCS file: /sources/hurd/gnumach/i386/i386/ipl.h,v
retrieving revision 1.2.2.1
diff -u -p -r1.2.2.1 ipl.h
--- i386/i386/ipl.h 13 Oct 2006 14:32:32 -0000 1.2.2.1
+++ i386/i386/ipl.h 22 Jul 2008 01:38:43 -0000
@@ -70,7 +70,7 @@ WITH THE USE OR PERFORMANCE OF THIS SOFT
#ifdef KERNEL
#ifndef __ASSEMBLER__
#include <machine/machspl.h>
-extern int (*ivect[])();
+extern void (*ivect[])();
extern int iunit[];
extern int intpri[];
#endif /* __ASSEMBLER__ */
Index: i386/i386/trap.c
===================================================================
RCS file: /sources/hurd/gnumach/i386/i386/trap.c,v
retrieving revision 1.5.2.13
diff -u -p -r1.5.2.13 trap.c
--- i386/i386/trap.c 20 Jul 2008 17:40:18 -0000 1.5.2.13
+++ i386/i386/trap.c 22 Jul 2008 01:38:43 -0000
@@ -60,10 +60,10 @@
#include "debug.h"
-extern void exception();
-extern void thread_exception_return();
+extern void exception() __attribute__ ((noreturn));
+extern void thread_exception_return() __attribute__ ((noreturn));
-extern void i386_exception();
+extern void i386_exception() __attribute__ ((noreturn));
#if MACH_KDB
boolean_t debug_all_traps_with_kdb = FALSE;
Index: i386/i386at/com.c
===================================================================
RCS file: /sources/hurd/gnumach/i386/i386at/Attic/com.c,v
retrieving revision 1.3.2.6
diff -u -p -r1.3.2.6 com.c
--- i386/i386at/com.c 20 Jul 2008 17:05:37 -0000 1.3.2.6
+++ i386/i386at/com.c 22 Jul 2008 01:38:43 -0000
@@ -47,8 +47,8 @@
extern void timeout(), ttrstrt();
-int comprobe(), comintr(), comstart(), commctl();
-void comattach();
+int comprobe(), comstart(), commctl();
+void comattach(), comintr();
static void comparam();
int comstop(), comgetstat(), comsetstat();
@@ -489,7 +489,7 @@ unsigned int count;
return (D_SUCCESS);
}
-int
+void
comintr(unit)
int unit;
{
@@ -816,6 +816,7 @@ int flags;
{
if ((tp->t_state & TS_BUSY) && (tp->t_state & TS_TTSTOP) == 0)
tp->t_state |= TS_FLUSH;
+ return 0;
}
/*
Index: i386/i386at/kd.c
===================================================================
RCS file: /sources/hurd/gnumach/i386/i386at/Attic/kd.c,v
retrieving revision 1.5.2.15
diff -u -p -r1.5.2.15 kd.c
--- i386/i386at/kd.c 20 Jul 2008 17:05:38 -0000 1.5.2.15
+++ i386/i386at/kd.c 22 Jul 2008 01:38:44 -0000
@@ -118,7 +118,7 @@ boolean_t kdcheckmagic();
int kdcnprobe(struct consdev *cp);
int kdcninit(struct consdev *cp);
int kdcngetc(dev_t dev, int wait);
-int kdcnputc(dev_t dev, int c);
+void kdcnputc(dev_t dev, int c);
int do_modifier (int, Scancode, boolean_t);
/*
@@ -461,7 +461,7 @@ kdopen(dev, flag, ior)
io_req_t ior;
{
struct tty *tp;
- int kdstart();
+ void kdstart();
spl_t o_pri;
int kdstop();
@@ -737,7 +737,7 @@ int flags; /* flags set for console *
*
*/
/*ARGSUSED*/
-int
+void
kdintr(vec, regs)
int vec;
int regs;
@@ -1085,7 +1085,7 @@ boolean_t extended;
* Entered and left at spltty. Drops priority to spl0 to display character.
* ASSUMES that it is never called from interrupt-driven code.
*/
-int
+void
kdstart(tp)
struct tty *tp;
{
@@ -1145,6 +1145,7 @@ kdstop(tp, flags)
* do nothing - all characters are output by one call to
* kdstart.
*/
+ return 0;
}
/*
@@ -2975,6 +2976,7 @@ kdcnprobe(struct consdev *cp)
cp->cn_dev = makedev(maj, unit);
cp->cn_pri = pri;
+ return 0;
}
int
@@ -2997,7 +2999,7 @@ kdcngetc(dev_t dev, int wait)
return kdcnmaygetc();
}
-int
+void
kdcnputc(dev_t dev, int c)
{
if (!kd_initialized)
Index: i386/i386at/kd_mouse.c
===================================================================
RCS file: /sources/hurd/gnumach/i386/i386at/Attic/kd_mouse.c,v
retrieving revision 1.3.2.9
diff -u -p -r1.3.2.9 kd_mouse.c
--- i386/i386at/kd_mouse.c 20 Jul 2008 17:05:38 -0000 1.3.2.9
+++ i386/i386at/kd_mouse.c 22 Jul 2008 01:38:44 -0000
@@ -124,7 +124,7 @@ u_char lastbuttons; /* previous state o
#define MOUSE_DOWN 0
#define MOUSE_ALL_UP 0x7
-int mouseintr();
+void mouseintr();
void mouse_enqueue();
int mouse_baud = BCNT1200;
@@ -539,7 +539,7 @@ done:
/*
* mouseintr - Get a byte and pass it up for handling. Called at SPLKD.
*/
-int
+void
mouseintr(unit)
{
unsigned short base_addr = cominfo[unit]->address;
Index: i386/i386at/lpr.c
===================================================================
RCS file: /sources/hurd/gnumach/i386/i386at/Attic/lpr.c,v
retrieving revision 1.1.1.1.4.10
diff -u -p -r1.1.1.1.4.10 lpr.c
--- i386/i386at/lpr.c 20 Jul 2008 17:05:38 -0000 1.1.1.1.4.10
+++ i386/i386at/lpr.c 22 Jul 2008 01:38:44 -0000
@@ -65,7 +65,8 @@ extern void ttrstrt();
* Driver information for auto-configuration stuff.
*/
-int lprprobe(), lprintr(), lprstart(), lprstop();
+int lprprobe(), lprstop();
+void lprintr(), lprstart();
void lprattach(struct bus_device *);
#ifdef MACH_KERNEL
int lprstop(), lprgetstat(), lprsetstat();
@@ -280,7 +281,7 @@ int lprioctl(dev, cmd, addr, mode)
}
#endif /* MACH_KERNEL */
-int lprintr(unit)
+void lprintr(unit)
int unit;
{
register struct tty *tp = &lpr_tty[unit];
@@ -295,7 +296,7 @@ int unit;
lprstart(tp);
}
-int lprstart(tp)
+void lprstart(tp)
struct tty *tp;
{
spl_t s = spltty();
@@ -305,13 +306,13 @@ struct tty *tp;
if (tp->t_state & (TS_TIMEOUT|TS_TTSTOP|TS_BUSY)) {
splx(s);
- return(0);
+ return;
}
if (status & 0x20) {
printf("Printer out of paper!\n");
splx(s);
- return(0);
+ return;
}
if (tp->t_outq.c_cc <= TTLOWAT(tp)) {
@@ -331,7 +332,7 @@ struct tty *tp;
}
if (tp->t_outq.c_cc == 0) {
splx(s);
- return(0);
+ return;
}
#ifdef MACH_KERNEL
nch = getc(&tp->t_outq);
@@ -366,7 +367,7 @@ struct tty *tp;
}
#endif /* MACH_KERNEL */
splx(s);
- return(0);
+ return;
}
#ifdef MACH_KERNEL
Index: i386/i386at/pic_isa.c
===================================================================
RCS file: /sources/hurd/gnumach/i386/i386at/pic_isa.c,v
retrieving revision 1.1.1.1.4.1
diff -u -p -r1.1.1.1.4.1 pic_isa.c
--- i386/i386at/pic_isa.c 15 Oct 2006 14:59:04 -0000 1.1.1.1.4.1
+++ i386/i386at/pic_isa.c 22 Jul 2008 01:38:44 -0000
@@ -33,7 +33,7 @@
extern intnull(), fpintr(), hardclock(), kdintr();
extern prtnull();
-int (*ivect[NINTR])() = {
+void (*ivect[NINTR])() = {
/* 00 */ hardclock, /* always */
#if RCLINE < 0
/* 01 */ kdintr, /* kdintr, ... */
Index: kern/eventcount.c
===================================================================
RCS file: /sources/hurd/gnumach/kern/eventcount.c,v
retrieving revision 1.1.1.1.4.7
diff -u -p -r1.1.1.1.4.7 eventcount.c
--- kern/eventcount.c 3 Dec 2006 21:50:20 -0000 1.1.1.1.4.7
+++ kern/eventcount.c 22 Jul 2008 01:38:44 -0000
@@ -227,7 +227,7 @@ kern_return_t evc_wait_clear(natural_t e
simple_unlock(&ev->lock);
splx(s);
- ret = KERN_NO_SPACE; /* XX */
+ return KERN_NO_SPACE; /* XX */
}
/*
Index: kern/exception.c
===================================================================
RCS file: /sources/hurd/gnumach/kern/exception.c,v
retrieving revision 1.6.2.6
diff -u -p -r1.6.2.6 exception.c
--- kern/exception.c 16 Jul 2008 00:51:04 -0000 1.6.2.6
+++ kern/exception.c 22 Jul 2008 01:38:44 -0000
@@ -51,15 +51,15 @@
-extern void exception();
-extern void exception_try_task();
-extern void exception_no_server();
+extern void exception() __attribute__ ((noreturn));
+extern void exception_try_task() __attribute__ ((noreturn));
+extern void exception_no_server() __attribute__ ((noreturn));
-extern void exception_raise();
+extern void exception_raise() __attribute__ ((noreturn));
extern kern_return_t exception_parse_reply();
-extern void exception_raise_continue();
-extern void exception_raise_continue_slow();
-extern void exception_raise_continue_fast();
+extern void exception_raise_continue() __attribute__ ((noreturn));
+extern void exception_raise_continue_slow() __attribute__ ((noreturn));
+extern void exception_raise_continue_fast() __attribute__ ((noreturn));
#if MACH_KDB
extern void thread_kdb_return();
@@ -113,7 +113,6 @@ exception(_exception, code, subcode)
ith_unlock(self);
exception_try_task(_exception, code, subcode);
/*NOTREACHED*/
- return;
}
ip_lock(exc_port);
@@ -122,7 +121,6 @@ exception(_exception, code, subcode)
ip_unlock(exc_port);
exception_try_task(_exception, code, subcode);
/*NOTREACHED*/
- return;
}
/*
@@ -183,7 +181,6 @@ exception_try_task(_exception, code, sub
itk_unlock(task);
exception_no_server();
/*NOTREACHED*/
- return;
}
ip_lock(exc_port);
@@ -192,7 +189,6 @@ exception_try_task(_exception, code, sub
ip_unlock(exc_port);
exception_no_server();
/*NOTREACHED*/
- return;
}
/*
@@ -268,6 +264,7 @@ exception_no_server()
(void) task_terminate(self->task);
thread_halt_self();
+ panic("terminating the task didn't kill us");
/*NOTREACHED*/
}
@@ -758,7 +755,6 @@ exception_raise(dest_port, thread_port,
ip_unlock(reply_port);
exception_raise_continue_slow(MACH_RCV_PORT_DIED, IKM_NULL, /*dummy*/0);
/*NOTREACHED*/
- return;
}
imq_lock(reply_mqueue);
@@ -933,7 +929,6 @@ exception_raise_continue_slow(mr, kmsg,
(mr == MACH_RCV_PORT_DIED)) {
thread_exception_return();
/*NOTREACHED*/
- return;
}
if (self->ith_exc != KERN_SUCCESS) {
@@ -941,7 +936,6 @@ exception_raise_continue_slow(mr, kmsg,
self->ith_exc_code,
self->ith_exc_subcode);
/*NOTREACHED*/
- return;
}
exception_no_server();
@@ -991,7 +985,6 @@ exception_raise_continue_fast(reply_port
if (kr == KERN_SUCCESS) {
thread_exception_return();
/*NOTREACHED*/
- return; /* help for the compiler */
}
if (self->ith_exc != KERN_SUCCESS) {