annotate test/union2.d @ 100:5071469303d4 trunk

[svn r104] TONS OF FIXES. Split up declaration, constant initializer gen and definition for globals, structs, classes and functions. Improved ClassInfo support (not complete), not in vtable yet. Fixed a bunch of forward reference problems. Much more. Major commit! :)
author lindquist
date Fri, 16 Nov 2007 08:21:47 +0100
parents 61615fa85940
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
73
b706170e24a9 [svn r77] Fixed foreach on slice.
lindquist
parents:
diff changeset
1 module union2;
b706170e24a9 [svn r77] Fixed foreach on slice.
lindquist
parents:
diff changeset
2
b706170e24a9 [svn r77] Fixed foreach on slice.
lindquist
parents:
diff changeset
3 pragma(LLVM_internal, "notypeinfo")
b706170e24a9 [svn r77] Fixed foreach on slice.
lindquist
parents:
diff changeset
4 union U
b706170e24a9 [svn r77] Fixed foreach on slice.
lindquist
parents:
diff changeset
5 {
b706170e24a9 [svn r77] Fixed foreach on slice.
lindquist
parents:
diff changeset
6 float f;
b706170e24a9 [svn r77] Fixed foreach on slice.
lindquist
parents:
diff changeset
7 long l;
b706170e24a9 [svn r77] Fixed foreach on slice.
lindquist
parents:
diff changeset
8 }
b706170e24a9 [svn r77] Fixed foreach on slice.
lindquist
parents:
diff changeset
9
b706170e24a9 [svn r77] Fixed foreach on slice.
lindquist
parents:
diff changeset
10 U u;
b706170e24a9 [svn r77] Fixed foreach on slice.
lindquist
parents:
diff changeset
11
b706170e24a9 [svn r77] Fixed foreach on slice.
lindquist
parents:
diff changeset
12 void main()
b706170e24a9 [svn r77] Fixed foreach on slice.
lindquist
parents:
diff changeset
13 {
b706170e24a9 [svn r77] Fixed foreach on slice.
lindquist
parents:
diff changeset
14 assert(u.f !<>= 0);
94
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 73
diff changeset
15 {
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 73
diff changeset
16 uint* p = 1 + cast(uint*)&u;
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 73
diff changeset
17 {assert(*p == 0);}
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 73
diff changeset
18 }
73
b706170e24a9 [svn r77] Fixed foreach on slice.
lindquist
parents:
diff changeset
19 }