annotate lphobos/std/stdarg.d @ 65:d4a678905d5e trunk

[svn r69] forgot std.stdarg
author lindquist
date Fri, 26 Oct 2007 15:14:51 +0200
parents
children fb265a6efea1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
65
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
1
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
2 /*
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
3 * Placed in public domain.
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
4 * Written by Hauke Duden and Walter Bright
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
5 */
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
6
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
7 /* This is for use with variable argument lists with extern(D) linkage. */
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
8
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
9 module std.stdarg;
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
10
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
11 alias void* va_list;
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
12
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
13 T va_arg(T)(inout va_list vp)
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
14 {
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
15 va_list vptmp = vp;
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
16 vp += T.sizeof;
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
17 return *cast(T*)vptmp;
d4a678905d5e [svn r69] forgot std.stdarg
lindquist
parents:
diff changeset
18 }