Mercurial > projects > ldc
view tests/mini/bug6.d @ 1210:3d4581761b4c
Add some alignment info where LLVM might otherwise be more pessimistic.
In particular, %.nest_arg is always aligned even though it's bitcast from i8*.
Pointers in vtables are also guaranteed to be stored at aligned addresses.
author | Frits van Bommel <fvbommel wxs.nl> |
---|---|
date | Sun, 12 Apr 2009 21:56:43 +0200 |
parents | 1bb99290e03a |
children |
line wrap: on
line source
module bug6; class wrong { } void bark(ref wrong s) { s = new wrong; } void foo(wrong tree) { auto old = tree; bark(tree); assert(old !is tree); } void main() { auto w = new wrong; auto old = w; foo(w); assert(w is old); }