Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!rutgers!ames!cit-vax!news From: news@cit-vax.UUCP Newsgroups: comp.arch Subject: Re: catering to bad code Message-ID: <1834@cit-vax.Caltech.Edu> Date: Fri, 20-Feb-87 07:34:48 EST Article-I.D.: cit-vax.1834 Posted: Fri Feb 20 07:34:48 1987 Date-Received: Sat, 21-Feb-87 06:18:15 EST References: <14833@amdcad.UUCP> <954@uw-nsr.UUCP> Reply-To: jon@oddhack.UUCP (Jon Leech) Organization: California Institute of Technology Lines: 24 Organization : California Institute of Technology Keywords: From: jon@oddhack.Caltech.Edu (Jon Leech) Path: oddhack!jon In article <954@uw-nsr.UUCP> john@uw-nsr.UUCP (John Sambrook 5-7433) writes: >Many of the programs that I have ported have tried to dereference >through NULL. On the MV series this does not work, at all. However >a much larger number of C programs are sloppy and don't cast pointer >types appropriately. On the MV series this causes a protection violation >and you are left looking at a few lines of traceback information. I'm glad they fixed this. When I was using an early version of DG/UX a few years ago, an incorrectly cast pointer in one program resulted in a system crash. This made the debugging turnaround cycle rather long until the cast was corrected. On the bright side, making the program in question (a screen editor) run on the MV architecture nailed almost every remaining portability bug. Putting the same program on an 80286 Xenix got the rest. I recommend this technique for developing truly portable C code. -- Jon Leech (jon@csvax.caltech.edu || ...seismo!cit-vax!jon) Caltech Computer Science Graphics Group __@/