Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!helios!bcm!dimacs.rutgers.edu!mips!spool.mu.edu!uunet!kithrup!sef From: sef@kithrup.COM (Sean Eric Fagan) Newsgroups: comp.std.c Subject: Re: call to revolt Message-ID: <1991Jun28.220128.22032@kithrup.COM> Date: 28 Jun 91 22:01:28 GMT References: <998@baby.and.nl> <1004@baby.and.nl> Organization: Kithrup Enterprises, Ltd. Lines: 34 I've got a bone to pick with X3J11, as well! I had some code that worked *fine* with my *K&R* compiler, but doesn't work with the ANSI compiler I got. The following *used* to work, but now doesn't! I can't understand *how* ANSI could even *begin* to define a language that *breaks* existing code! int foo(a, b) int a, b; { int tmp; /* some stuff */ tmp = a*b; } main() { printf ("%d\n", foo(10, 20)); } I think we should all start a letter-writing campaign to protest how X3J11 *broke* C! ---- Editor's note: the posted example is true, only the code has been simplified to protect the innocent. A certain version of Microsoft C for Xenix '386 performed the multiply, and left the result in %eax. A certain version of GCC, seeing that the result was not returned, did not perform the multiplication, therefore a random value was left in %eax. The author of the code is now serving maximum sentence in a COBOL shop. ---- -- Sean Eric Fagan | "What *does* that 33 do? I have no idea." sef@kithrup.COM | -- Chris Torek -----------------+ (torek@ee.lbl.gov) Any opinions expressed are my own, and generally unpopular with others.