Mercurial > projects > ldc
view test/classes4.d @ 217:0806379a5eca trunk
[svn r233] Added: -oq command line option for writing fully qualified object names.
Added: started support for x86 80bit floating point.
Changed: aggregates passed by value now use the llvm 'byval' parameter attribute, also lays ground work for
using other attributes.
Changed: eliminated a lot more std::vectorS, these showed up pretty much at the top when profiling!
Changed: performed other misc. cleanups.
Changed: halt expression now call the new llvm trap intrinsic instead of an assert(0).
Changed: dstress suite now passes -O0 by default, this only eliminates unreferenced globals, which speeds up
linking quite a bit.
author | lindquist |
---|---|
date | Thu, 05 Jun 2008 06:38:36 +0200 |
parents | c53b6e3fe49a |
children | d9d5d59873d8 |
line wrap: on
line source
class A { int i = 42; double df = 3.1415; this() { } char[] toString() { return "A:Object"; } } class B : A { ubyte b; char[] toString() { return "B:A"; } } void main() { scope a = new A; char[] as = a.toString; {printf("a.toString = '%.*s'\n", as.length, as.ptr);} Object o = a; char[] os = o.toString; {printf("o.toString = '%.*s'\n", os.length, os.ptr);} scope b = new B; char[] bs = b.toString; {printf("b.toString = '%.*s'\n", bs.length, bs.ptr);} }