Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!zaphod.mps.ohio-state.edu!rpi!crdgw1!camelback!volpe From: volpe@camelback.crd.ge.com (Christopher R Volpe) Newsgroups: comp.std.c Subject: Re: so how do I do it? (was Re: call to revolt) Message-ID: <20997@crdgw1.crd.ge.com> Date: 28 Jun 91 14:25:54 GMT References: Sender: news@crdgw1.crd.ge.com Reply-To: volpe@camelback.crd.ge.com (Christopher R Volpe) Lines: 24 In article , minar@reed.edu writes: |>If |> |>void * p; |>(int *)p++; |> |>is illegal, how do I do what I mean? When you say "(int *)p++;", what you're really saying is: (int *)p = (int *)p + 1; The only problem with that is that the left hand side is not an lvalue, because of the cast. So, nuke the cast: p = (int *)p + 1; There, the RHS is the expression you want, which can legally be assigned to p, since it is an lvalue of type (void *). -Chris ================== Chris Volpe G.E. Corporate R&D volpecr@crd.ge.com