Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!uwm.edu!ux1.cso.uiuc.edu!csrd.uiuc.edu!sp64.csrd.uiuc.edu!bliss From: bliss@sp64.csrd.uiuc.edu (Brian Bliss) Newsgroups: comp.lang.c Subject: Re: Assignment Ops and Side Effects Message-ID: <1991Apr4.202314.961@csrd.uiuc.edu> Date: 4 Apr 91 20:23:14 GMT References: <1991Apr3.173046.2367@mccc.edu> Sender: news@csrd.uiuc.edu (news) Reply-To: bliss@sp64.csrd.uiuc.edu (Brian Bliss) Organization: Center for Supercomputing Research and Development Lines: 22 > how does the standard describe the situation where, for example, > x++ *= y; > is treated as if it were > x++ = x * y; > and not > x++ = x++ * y; The result of an increment or decrement operation is not a legal lhs of an expression. bb P.S. an interesting tidbit I just found out: if you're on a machine where sizeof (int) == 4, then char ch; sizeof (ch += 1) == 4 sizeof (ch++) == 1 apparrently operands of ++ and -- do not undergo integral promotion