view tests/mini/vararg1.d @ 737:041c1596d217

Removed warnings on ignored aligns. Only do aligment on packed structs, align(1) struct Packed { ... } Changed the way struct/class fields are added, first small part of cleaning up these... Make struct/class/union fields aware of any anonymous struct/union they might be part of, not yet really useful, but part of getting better union support.
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Tue, 28 Oct 2008 15:41:09 +0100
parents 44f08170f4ef
children
line wrap: on
line source

module vararg1;

import tango.stdc.stdarg;

extern(C) int add(int n, ...)
{
    va_list ap=void;
    va_start(ap, n);
    int r;
    for (int i=0; i<n; i++)
        r += va_arg!(int)(ap);
    va_end(ap);
    return r;
}

void main()
{
    int i = add(4, 1,2,3,4);
    assert(i == 10);
}