ISO C++ forbids cast to non-reference type used as lvalue ?
Shay Gal-On
Shay_Gal-On@pmc-sierra.com
Wed Jul 13 22:38:00 GMT 2005
Another way to do this, which you may be able to script, is:
pbData = (DWORD *)pbData + 1;
Then you will get only a warning instead of an error.
It won't be to hard to script something looking for those lvalaues with += and converting them to the above form.
- Shay
> -----Original Message-----
> From: crossgcc-owner@sources.redhat.com
> [mailto:crossgcc-owner@sources.redhat.com]On Behalf Of Steven Scholz
> Sent: Tuesday, July 12, 2005 6:11 AM
> To: crossgcc@sources.redhat.com
> Subject: Re: ISO C++ forbids cast to non-reference type used
> as lvalue ?
>
>
> Mike Frysinger wrote:
>
> > On Tuesday 12 July 2005 03:13 am, Steven Scholz wrote:
> >
> >>>What type is pbData? If it's char *, you can do
> >>> pbData += sizeof(DWORD);
> >>
> >> BYTE *pbData; (and BYTE is typedef unsigned char)
> >
> >
> > so doing what dan indicated should work fine
>
> Yes. Thanks.
> But by now I realized that the above case was the easiest one.
>
> I have to "convince" my developers that they clean up / fix
> their code.
> Until then I have to stick to gcc-3.3.3 whcih allows such nasty stuff.
>
> Thanks a million to all of you!
>
> --
> Steven
>
> ------
> Want more information? See the CrossGCC FAQ,
> http://www.objsw.com/CrossGCC/
> Want to unsubscribe? Send a note to
> crossgcc-unsubscribe@sources.redhat.com
>
------
Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
More information about the crossgcc
mailing list