On 17/01/2015 19:03, "Philipp Klaus Krause" <[email protected]> wrote:
>Currently, when compiling using --std-sdcc89 or --std-sdcc99 (but not
>when using --std-c89, --std-c99 or --std-c11), sdcc does not do integer
>promotion on explicitly cast arguments to functions with variable
>arguments:
>
>void f1(int, ...);
>
>char c;
>
>void f2(void)
>{
> f1(0, (char)c); // Will pass a char
> f1(0, c); // Will pass an int
>}
>
>This can save a byte on the stack when passing an argument of char to a
>functionw with variable arguments. However, it makes code compiled using
>different --std- options incompatible (will fail at run time). I assume
>char arguments to functions with variable arguments to be relatively
>rare, and the cases where the single byte on the stack matters even more
>so.
>
>In anyone using this feature?
>
>If not, I'd suggest to drop it after the next release.
>
>Philipp
>
>
I'm ok with dropping this.
This e-mail may contain confidential or privileged information. If you are not
the intended recipient (or have received this e-mail in error) please notify
the sender immediately and destroy this e-mail. Any unauthorized copying,
disclosure or distribution of the material in this e-mail is strictly
forbidden. We will not be liable for direct, indirect, special or consequential
damages arising from alteration of the contents of this message by a third
party or as a result of any virus being passed on or as of transmission of this
e-mail in general.
------------------------------------------------------------------------------
New Year. New Location. New Benefits. New Data Center in Ashburn, VA.
GigeNET is offering a free month of service with a new server in Ashburn.
Choose from 2 high performing configs, both with 100TB of bandwidth.
Higher redundancy.Lower latency.Increased capacity.Completely compliant.
http://p.sf.net/sfu/gigenet
_______________________________________________
Sdcc-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sdcc-user