[gccsdk] libscl valist functions and __GNUC__

Graham Shaw gdshaw at sagitta.demon.co.uk
Sun May 27 10:42:50 PDT 2007


In article <ab4886070705271023w29ea19bnc883b83db6b1f295 at mail.gmail.com>,
   Nick Burrett <nick at sqrt.co.uk> wrote:
> On 5/27/07, John Tytgat <John.Tytgat at aaug.net> wrote:

> Yes, you're right.  Norcroft promotes float arguments to double
> whereas GCC will not.  The convention in GCC is the correct one, but
> I'm not sure of the historical reason as to why Norcroft promotes to
> double.

"Any actual arguments of type float are converted to double before the
call"

(p186, The C Programming Language, K&R, 1st Edition)

The same is true in C90 and C99 if the function does not have a prototype,
but it is now possible to pass a float by value if you wish to whereas
originally it was not.

-- 
Graham Shaw (http://www.sagitta.demon.co.uk/graham/)
The RISC OS Packaging Project (http://www.riscpkg.org/)
The RISC OS Toolkit (http://rtk.riscos.org.uk/)




More information about the gcc mailing list