Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GCC 4.0 "C" question



> I'm taking on some older code, and I'm getting this warning: "warning:
> target of assignment not really an lvalue; this will be a hard error
> in the future"
>
> for the following line:
>
> *((uint32_t*)dst)++ = *((uint32_t*)src)++;
>
> Why is this code going to be an error in the future?

Hi,
	it seems such casting was deprecated since gcc-3.4, according to:
http://gcc.gnu.org/gcc-3.4/changes.html.  (search for cast-as-lvalue, in
the C/C++ section.)  This also applies to 4.0, of course.  This was a
GNU-extension, not part of the C standard, so the best bet is to not
depend on it, for portability.  To see why lvalue-casts are a bad idea,
check the following thread:
http://gcc.gnu.org/ml/gcc/2003-05/msg00847.html

David Fang

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/xcode-users/email@hidden

This email sent to email@hidden

References: 
 >GCC 4.0 "C" question (From: Mark Dawson <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.