[svn r362] Started merging the old 'test' dir as well as the newer 'tangotests' dir into 'tests/mini' and 'tests/minicomplex'.

This commit is contained in:
Tomas Lindquist Olsen
2008-07-13 02:51:19 +02:00
parent d1e41f611e
commit cecb64b2e4
339 changed files with 388 additions and 172 deletions

39
tests/mini/union5.d Normal file
View File

@@ -0,0 +1,39 @@
module union5;
pragma(LLVM_internal, "notypeinfo")
{
union S
{
T t;
U u;
uint i;
struct {
ushort sl,sh;
}
}
struct T
{
int i;
}
struct U
{
float f;
}
}
void main()
{
S s;
assert(s.t.i == 0);
assert(s.u.f == 0);
s.t.i = -1;
assert(s.i == 0xFFFF_FFFF);
float f = 3.1415;
s.u.f = f;
uint pi = *cast(uint*)&f;
assert(s.i == pi);
assert(s.sl == (pi&0xFFFF));
assert(s.sh == (pi>>>16));
}