[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: casting from unsigned short int to unsigned int (on gcc 3.4.4, comp
From: |
Paul Pluzhnikov |
Subject: |
Re: casting from unsigned short int to unsigned int (on gcc 3.4.4, compiles fine with 2.95.1) |
Date: |
Tue, 07 Mar 2006 23:15:36 -0800 |
User-agent: |
Gnus/5.1006 (Gnus v5.10.6) XEmacs/21.4 (Jumbo Shrimp, linux) |
"whizz_kid" <techybrainz@gmail.com> writes:
> Can anyone please tell me whats happenning here....??
The result of a cast is not an l-value, and can't be bound to
non-const reference.
Consider:
short s;
int &r = (int)s;
r = 0xFFFFFFFF;
If the compiler allowed binding 'r' to 's' (i.e. if &r == &s),
then the assignment to 'r' would have resulted in stack corruption
(assuming sizeof(short) < sizeof(int)).
If Class1::function1() doesn't modify 'ret' parameter, make it
'const TDF_U32 &'.
If it does, you *must* supply a modifiable value of type TDF_U32;
you can't use '(TDF_U32)obj.retsend' any more then you can use
'(TDF_U32)42' ...
Cheers,
--
In order to understand recursion you must first understand recursion.
Remove /-nsp/ for email.