On May 20, 2010, at 1:10 PM, Chucky Ellison wrote:

I've noticed some argument promotions that seem not to have been made explicit. In the code:

int testDifferent(int x, ...);

On May 21, 2010, at 3:01 AM, Christoph Spiel wrote:

I can reproduce your findings and I too
think Cil does not follow the C-standard here,
though IMHO the relevant part is not 7.15.1.1:2,
but 6.5.2.2:7.  Also see: Harbison/Steele
Sec. 6.3.5.


Aside from ellipses in function prototypes, CIL also exhibits this behavior when functions are declared with no prototype, as in:
        void f();

I think 6.5.2.2:6 of the standard says that the default argument promotions should happen here, too. But I must admit that this paragraph is a bit hard to understand. (There are a few tests in CIL's svn distribution, test/small1/noproto*.c, which seem to be testing something regarding functions without prototypes, but those tests show that CIL doesn't insert casts.)

Elnatan
------------------------------------------------------------------------------

_______________________________________________
CIL-users mailing list
CIL-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cil-users

Reply via email to