Mercurial > projects > ldc
annotate tests/mini/tuplestruct.d @ 1134:152bd2c804d0
Update comments now that LLVM PR3861 has been fixed. However, since
conditionally removing the workaround makes the ABI dependent on LLVM version,
I reconsidered that.
(The same revision of LDC compiling for the same target should probably produce
code that follows the same ABI, right?)
author | Frits van Bommel <fvbommel wxs.nl> |
---|---|
date | Tue, 24 Mar 2009 02:46:57 +0100 |
parents | 76e72fdef04d |
children | 8ebbad15fc99 |
rev | line source |
---|---|
1132
76e72fdef04d
Fix tuple declarations in aggregates.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
1 struct V(T...) { |
76e72fdef04d
Fix tuple declarations in aggregates.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
2 T v; |
76e72fdef04d
Fix tuple declarations in aggregates.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
3 } |
76e72fdef04d
Fix tuple declarations in aggregates.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
4 |
76e72fdef04d
Fix tuple declarations in aggregates.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
5 alias V!(Object, int) MyV; |
76e72fdef04d
Fix tuple declarations in aggregates.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
6 |
76e72fdef04d
Fix tuple declarations in aggregates.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
7 void main() |
76e72fdef04d
Fix tuple declarations in aggregates.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
8 { |
76e72fdef04d
Fix tuple declarations in aggregates.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
9 assert(MyV.sizeof == Object.sizeof + int.sizeof); |
76e72fdef04d
Fix tuple declarations in aggregates.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
10 auto o = new Object; |
76e72fdef04d
Fix tuple declarations in aggregates.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
11 auto v = MyV(o, 3); |
76e72fdef04d
Fix tuple declarations in aggregates.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
12 assert(v.v[0] is o); |
76e72fdef04d
Fix tuple declarations in aggregates.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
13 assert(v.v[1] == 3); |
76e72fdef04d
Fix tuple declarations in aggregates.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
14 } |
76e72fdef04d
Fix tuple declarations in aggregates.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
15 |