From owner-cvs-sys Sat May 9 05:17:50 1998 Return-Path: Received: (from daemon@localhost) by hub.freebsd.org (8.8.8/8.8.8) id FAA09255 for cvs-sys-outgoing; Sat, 9 May 1998 05:17:50 -0700 (PDT) (envelope-from owner-cvs-sys) Received: from freefall.freebsd.org (freefall.FreeBSD.ORG [204.216.27.21]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id FAA09194; Sat, 9 May 1998 05:17:24 -0700 (PDT) (envelope-from bde@FreeBSD.org) From: Bruce Evans Received: (from bde@localhost) by freefall.freebsd.org (8.8.8/8.8.5) id FAA18917; Sat, 9 May 1998 05:14:20 -0700 (PDT) Date: Sat, 9 May 1998 05:14:20 -0700 (PDT) Message-Id: <199805091214.FAA18917@freefall.freebsd.org> To: cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG, cvs-sys@FreeBSD.ORG Subject: cvs commit: src/sys/sys kernel.h Sender: owner-cvs-sys@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk bde 1998/05/09 05:14:19 PDT Modified files: sys/sys kernel.h Log: Fixed overflow in sysinit enum constants. In that little-used language, ANSI C, enum constants must be representable as ints. We assumed at-least-33-bit ints. This worked on some 32-bit systems because we don't mix negative sysinit enum constants with too-large sysinit enum constants, and the compiler used an unsigned 32-bit type for sysinit enum variables, so sysinit enum variables were sorted correctly. The fix lops off 4 hopefully-unused bits so that we now only assume at-least-29-bit ints. Revision Changes Path 1.40 +47 -47 src/sys/sys/kernel.h