Mercurial > projects > ldc
annotate tests/mini/vararg3.d @ 1603:eae495e6ae8d
Merge DMD r248: implement Denis Koroskin's macro suggestion
---
dmd/lexer.c | 2 +-
dmd/lexer.h | 8 ++++----
dmd/mars.c | 2 +-
dmd/parse.c | 12 ++++++------
4 files changed, 12 insertions(+), 12 deletions(-)
author | Leandro Lucarella <llucax@gmail.com> |
---|---|
date | Wed, 06 Jan 2010 15:18:19 -0300 |
parents | 1bb99290e03a |
children |
rev | line source |
---|---|
57
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
1 module vararg3; |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
2 |
270
d9d5d59873d8
[svn r291] Fixed a bunch of the old Phobos tests to work with Tango.
lindquist
parents:
57
diff
changeset
|
3 import tango.core.Vararg; |
57
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
4 |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
5 void func(...) |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
6 { |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
7 assert(_arguments.length == 3); |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
8 assert(_arguments[0] is typeid(int)); |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
9 assert(_arguments[1] is typeid(float)); |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
10 assert(_arguments[2] is typeid(long)); |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
11 assert(va_arg!(int)(_argptr) == 4); |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
12 assert(va_arg!(float)(_argptr) == 2.5f); |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
13 assert(va_arg!(long)(_argptr) == 42L); |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
14 } |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
15 |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
16 void main() |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
17 { |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
18 func(4, 2.5f, 42L); |
a9d29e9f1fed
[svn r61] Added support for D-style variadic functions :)
lindquist
parents:
diff
changeset
|
19 } |