Mercurial > projects > ldc
diff test/vararg3.d @ 57:a9d29e9f1fed trunk
[svn r61] Added support for D-style variadic functions :)
author | lindquist |
---|---|
date | Thu, 25 Oct 2007 02:39:53 +0200 |
parents | |
children | d9d5d59873d8 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/vararg3.d Thu Oct 25 02:39:53 2007 +0200 @@ -0,0 +1,19 @@ +module vararg3; + +import std.stdarg; + +void func(...) +{ + assert(_arguments.length == 3); + assert(_arguments[0] is typeid(int)); + assert(_arguments[1] is typeid(float)); + assert(_arguments[2] is typeid(long)); + assert(va_arg!(int)(_argptr) == 4); + assert(va_arg!(float)(_argptr) == 2.5f); + assert(va_arg!(long)(_argptr) == 42L); +} + +void main() +{ + func(4, 2.5f, 42L); +}