Mercurial > projects > ldc
annotate tests/mini/typeinfo2.d @ 345:5320fe65a65d trunk
[svn r366] Fixed identity exprs for structs was comparing addresses, not content!
author | lindquist |
---|---|
date | Sun, 13 Jul 2008 04:27:02 +0200 |
parents | 1bb99290e03a |
children |
rev | line source |
---|---|
53
06ccc817acd4
[svn r57] Added most basic TypeInfo (rebuild lphobos).
lindquist
parents:
diff
changeset
|
1 module typeinfo2; |
06ccc817acd4
[svn r57] Added most basic TypeInfo (rebuild lphobos).
lindquist
parents:
diff
changeset
|
2 |
06ccc817acd4
[svn r57] Added most basic TypeInfo (rebuild lphobos).
lindquist
parents:
diff
changeset
|
3 void main() |
06ccc817acd4
[svn r57] Added most basic TypeInfo (rebuild lphobos).
lindquist
parents:
diff
changeset
|
4 { |
06ccc817acd4
[svn r57] Added most basic TypeInfo (rebuild lphobos).
lindquist
parents:
diff
changeset
|
5 auto ti = typeid(float); |
06ccc817acd4
[svn r57] Added most basic TypeInfo (rebuild lphobos).
lindquist
parents:
diff
changeset
|
6 float f = 2.5; |
06ccc817acd4
[svn r57] Added most basic TypeInfo (rebuild lphobos).
lindquist
parents:
diff
changeset
|
7 hash_t fh = ti.getHash(&f); |
06ccc817acd4
[svn r57] Added most basic TypeInfo (rebuild lphobos).
lindquist
parents:
diff
changeset
|
8 assert(ti.next is null); |
06ccc817acd4
[svn r57] Added most basic TypeInfo (rebuild lphobos).
lindquist
parents:
diff
changeset
|
9 float g = 4.0; |
06ccc817acd4
[svn r57] Added most basic TypeInfo (rebuild lphobos).
lindquist
parents:
diff
changeset
|
10 ti.swap(&f,&g); |
06ccc817acd4
[svn r57] Added most basic TypeInfo (rebuild lphobos).
lindquist
parents:
diff
changeset
|
11 assert(f == 4.0 && g == 2.5); |
06ccc817acd4
[svn r57] Added most basic TypeInfo (rebuild lphobos).
lindquist
parents:
diff
changeset
|
12 assert(fh == *cast(uint*)(&g)); |
06ccc817acd4
[svn r57] Added most basic TypeInfo (rebuild lphobos).
lindquist
parents:
diff
changeset
|
13 assert(!ti.flags); |
06ccc817acd4
[svn r57] Added most basic TypeInfo (rebuild lphobos).
lindquist
parents:
diff
changeset
|
14 } |