Mercurial > projects > ldc
view druntime/import/stdc/stdarg.d @ 760:6f33b427bfd1
Seems like hg ignores .di files, so I missed a bunch of stuff. complete druntime should be there now :)
author | Tomas Lindquist Olsen <tomas.l.olsen@gmail.com> |
---|---|
date | Wed, 12 Nov 2008 00:19:18 +0100 |
parents | |
children |
line wrap: on
line source
/** * D header file for C99. * * Copyright: Public Domain * License: Public Domain * Authors: Hauke Duden, Walter Bright * Standards: ISO/IEC 9899:1999 (E) */ module stdc.stdarg; version( LDC ) { public import ldc.cstdarg; } version( GNU ) { public import std.c.stdarg; } else { alias void* va_list; template va_start( T ) { void va_start( out va_list ap, inout T parmn ) { ap = cast(va_list) ( cast(void*) &parmn + ( ( T.sizeof + int.sizeof - 1 ) & ~( int.sizeof - 1 ) ) ); } } template va_arg( T ) { T va_arg( inout va_list ap ) { T arg = *cast(T*) ap; ap = cast(va_list) ( cast(void*) ap + ( ( T.sizeof + int.sizeof - 1 ) & ~( int.sizeof - 1 ) ) ); return arg; } } void va_end( va_list ap ) { } void va_copy( out va_list dest, va_list src ) { dest = src; } }