$NetBSD: patch-ac,v 1.2 2009/08/26 17:36:45 hasso Exp $ --- lib/exceptionhandler/exceptionhandler.c.orig 2009-08-23 07:05:11 +0300 +++ lib/exceptionhandler/exceptionhandler.c 2009-08-26 19:09:43 +0300 @@ -170,18 +170,21 @@ static const char * wz_strsignal(int sig case SIGBUS: switch (sigcode) { +#if !defined(__DragonFly__) case BUS_ADRALN: return "SIGBUS: Access to an undefined portion of a memory object: Invalid address alignment"; case BUS_ADRERR: return "SIGBUS: Access to an undefined portion of a memory object: Nonexistent physical address"; case BUS_OBJERR: return "SIGBUS: Access to an undefined portion of a memory object: Object-specific hardware error"; +#endif default: return "SIGBUS: Access to an undefined portion of a memory object"; } case SIGCHLD: switch (sigcode) { +#if !defined(__DragonFly__) case CLD_EXITED: return "SIGCHLD: Child process terminated, stopped, or continued: Child has exited"; case CLD_KILLED: @@ -194,12 +197,16 @@ static const char * wz_strsignal(int sig return "SIGCHLD: Child process terminated, stopped, or continued: Child has stopped"; case CLD_CONTINUED: return "SIGCHLD: Child process terminated, stopped, or continued: Stopped child has continued"; +#endif + default: + return "SIGCHLD: Child process terminated, stopped, or continued"; } case SIGCONT: return "SIGCONT: Continue executing, if stopped"; case SIGFPE: switch (sigcode) { +#if !defined(__DragonFly__) case FPE_INTDIV: return "SIGFPE: Erroneous arithmetic operation: Integer divide by zero"; case FPE_INTOVF: @@ -216,6 +223,7 @@ static const char * wz_strsignal(int sig return "SIGFPE: Erroneous arithmetic operation: Invalid floating-point operation"; case FPE_FLTSUB: return "SIGFPE: Erroneous arithmetic operation: Subscript out of range"; +#endif default: return "SIGFPE: Erroneous arithmetic operation"; }; @@ -224,6 +232,7 @@ static const char * wz_strsignal(int sig case SIGILL: switch (sigcode) { +#if !defined(__DragonFly__) case ILL_ILLOPC: return "SIGILL: Illegal instruction: Illegal opcode"; case ILL_ILLOPN: @@ -240,6 +249,7 @@ static const char * wz_strsignal(int sig return "SIGILL: Illegal instruction: Coprocessor error"; case ILL_BADSTK: return "SIGILL: Illegal instruction: Internal stack error"; +#endif default: return "SIGILL: Illegal instruction"; } @@ -254,10 +264,12 @@ static const char * wz_strsignal(int sig case SIGSEGV: switch (sigcode) { +#if !defined(__DragonFly__) case SEGV_MAPERR: return "SIGSEGV: Invalid memory reference: Address not mapped to object"; case SEGV_ACCERR: return "SIGSEGV: Invalid memory reference: Invalid permissions for mapped object"; +#endif default: return "SIGSEGV: Invalid memory reference"; } @@ -276,6 +288,7 @@ static const char * wz_strsignal(int sig case SIGUSR2: return "SIGUSR2: User-defined signal 2"; #if _XOPEN_UNIX +#if !defined(__DragonFly__) case SIGPOLL: switch (sigcode) { @@ -307,6 +320,7 @@ static const char * wz_strsignal(int sig default: return "SIGPOLL: Pollable event"; } +#endif case SIGPROF: return "SIGPROF: Profiling timer expired"; case SIGSYS: @@ -314,10 +328,12 @@ static const char * wz_strsignal(int sig case SIGTRAP: switch (sigcode) { +#if !defined(__DragonFly__) case TRAP_BRKPT: return "SIGTRAP: Trace/breakpoint trap: Process breakpoint"; case TRAP_TRACE: return "SIGTRAP: Trace/breakpoint trap: Process trace trap"; +#endif default: return "SIGTRAP: Trace/breakpoint trap"; }