Mercurial > projects > ldc
annotate tests/mini/typeinfo9.d @ 554:1b702422451c
Always call finalizer for stack classes. Checking for the number of
destructors of the class type is not sufficient: we may be holding a derived
class with a destructor.
Fixes: run/auto_07
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Thu, 28 Aug 2008 20:17:21 +0200 |
parents | 1bb99290e03a |
children |
rev | line source |
---|---|
69
2b5a2eaa88be
[svn r73] Identity expression for dynamic array and null was broken.
lindquist
parents:
diff
changeset
|
1 module typeinfo9; |
2b5a2eaa88be
[svn r73] Identity expression for dynamic array and null was broken.
lindquist
parents:
diff
changeset
|
2 |
2b5a2eaa88be
[svn r73] Identity expression for dynamic array and null was broken.
lindquist
parents:
diff
changeset
|
3 typedef int int_t = 42; |
2b5a2eaa88be
[svn r73] Identity expression for dynamic array and null was broken.
lindquist
parents:
diff
changeset
|
4 |
2b5a2eaa88be
[svn r73] Identity expression for dynamic array and null was broken.
lindquist
parents:
diff
changeset
|
5 void main() |
2b5a2eaa88be
[svn r73] Identity expression for dynamic array and null was broken.
lindquist
parents:
diff
changeset
|
6 { |
2b5a2eaa88be
[svn r73] Identity expression for dynamic array and null was broken.
lindquist
parents:
diff
changeset
|
7 auto i = typeid(int_t).init; |
2b5a2eaa88be
[svn r73] Identity expression for dynamic array and null was broken.
lindquist
parents:
diff
changeset
|
8 assert(i.length == int_t.sizeof); |
2b5a2eaa88be
[svn r73] Identity expression for dynamic array and null was broken.
lindquist
parents:
diff
changeset
|
9 assert(*cast(int_t*)i.ptr == 42); |
2b5a2eaa88be
[svn r73] Identity expression for dynamic array and null was broken.
lindquist
parents:
diff
changeset
|
10 } |