Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watmath!clyde!cbosgd!ihnp4!homxb!homxc!jdn From: jdn@homxc.UUCP Newsgroups: comp.sys.atari.st Subject: Re: MWC problems Message-ID: <2062@homxc.UUCP> Date: Mon, 9-Nov-87 10:39:43 EST Article-I.D.: homxc.2062 Posted: Mon Nov 9 10:39:43 1987 Date-Received: Wed, 11-Nov-87 23:31:05 EST References: <423@Lindy.STANFORD.EDU> <105100026@datacube> Organization: AT&T Bell Laboratories, Holmdel Lines: 32 Summary: correction In article <105100026@datacube>, ftw@datacube.UUCP writes: > > kevin@Lindy.UUCP writes: > > > When compiling something with Mark Williams C, I got the following > > error message: > > > 603: In cc1: Fatal error: Internal compiler error: FFFFA77E > > > Here are lines 602 & 603: > > > [602] while ( *p != ' ' && *p != '\t' && *p != '\n' && *p != '\0') > > [603] *p++; > > > with the declaration: > > register char *p; > > > Could someone tell me what's going on? I don't see anything wrong with > > the above bit of code... > Farrel proceeds to give an explanation which is basically correct; however he makes the following oversight. > The compiler is probably confused because it expects some form of assignment > to be taking place at about that point, as in "ch = *p++;" which increments > "p", and assigns the thing now pointed at by "p" to "ch". Not so. This makes the assignment first, and then increments the pointer. Jonathan Nagy {ihnp4|allegra|harvard}!homxc!jdn (201) 615-4349