Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!rphroy!caen!uwm.edu!linac!att!ucbvax!dog.ee.lbl.gov!elf.ee.lbl.gov!torek From: torek@elf.ee.lbl.gov (Chris Torek) Newsgroups: comp.std.c Subject: Re: Function Argument Evaluation Message-ID: <11512@dog.ee.lbl.gov> Date: 27 Mar 91 10:44:20 GMT References: <15552@smoke.brl.mil> <1991Mar23.014442.24307@cs.ucla.edu> <17868@crdgw1.crd.ge.com> <3216@charon.cwi.nl> <17895@crdgw1.crd.ge.com> Reply-To: torek@elf.ee.lbl.gov (Chris Torek) Organization: Lawrence Berkeley Laboratory, Berkeley Lines: 19 X-Local-Date: Wed, 27 Mar 91 02:44:20 PST In article <17895@crdgw1.crd.ge.com> volpe@camelback.crd.ge.com (Christopher R Volpe) writes: >However, isn't this a moot point? The only time the value of 'expression' >before assignment may NOT be equal to the value of 'lvalue' after >assignment is in the case that 'lvalue' has its contents modified more >than once between sequence points, in which case all bets are off. No: one typical case is: unsigned char c; unsigned long l; ... (void) printf("l=%lx c=%x\n", l, (c = l)); which (again, `typically') pushes `l' through a `character knothole' and `scrapes off' the top bits. -- In-Real-Life: Chris Torek, Lawrence Berkeley Lab CSE/EE (+1 415 486 5427) Berkeley, CA Domain: torek@ee.lbl.gov