view runtime/import/ldc/cstdarg.di @ 1054:a3d7288c4473

Future-proof the code to classify static array members of structs. I made sure to create a merge conflict with the code attached to ticket #229 (which comments this code out due to changes in the DMD 'Type' type hierarchy) so that if it gets committed as-is there will be a human looking at it.
author Frits van Bommel <fvbommel wxs.nl>
date Sun, 08 Mar 2009 01:26:30 +0100
parents d8a1481eaa0c
children
line wrap: on
line source

/*
 * vararg support for extern(C) functions
 */

module ldc.cstdarg;

// Check for the right compiler
version(LDC)
{
    // OK
}
else
{
    static assert(false, "This module is only valid for LDC");
}

alias void* va_list;

pragma(va_start)
    void va_start(T)(va_list ap, ref T);

pragma(va_arg)
    T va_arg(T)(va_list ap);

pragma(va_end)
    void va_end(va_list args);

pragma(va_copy)
    void va_copy(va_list dst, va_list src);