Mercurial > projects > ldc
annotate test/slices.d @ 203:e881c9b1c738 trunk
[svn r219] Fixed: the tango/lib/gc/basic garbage collector now compiles and links into an executable (change in tango/lib/llvmdc-posix.mak), closes #5 .
Changed: removed the crappy realloc based dynamic memory runtime and started moving over to DMD style runtime support, part of moving to real GC.
Fixed: dynamic arrays now use GC runtime for allocating memory.
Fixed: new expression now use GC for allocating memory.
Changed: revamped the dynamic array support routines related to dynamic memory.
Fixed: assertions no longer create exsessive allocas.
Changed: misc. minor cleanups.
author | lindquist |
---|---|
date | Tue, 13 May 2008 14:42:09 +0200 |
parents | c53b6e3fe49a |
children |
rev | line source |
---|---|
1 | 1 module slices; |
2 | |
3 void main() | |
4 { | |
5 //char[] a = "hello world"; | |
6 //char[5] b = a[0..5]; | |
7 | |
8 //char* cp = a.ptr; | |
9 //char[] c = cp[0..1]; | |
10 } | |
11 | |
12 char[] first5(char[] str) | |
13 { | |
14 char* p = str.ptr; | |
15 return p[0..5]; | |
16 } | |
17 | |
18 int[] one() | |
19 { | |
20 static int i; | |
21 return (&i)[0..1]; | |
22 } | |
23 | |
24 void[] init() | |
25 { | |
26 static char c; | |
27 return (&c)[0 .. 1]; | |
28 } | |
29 | |
30 void[] init2() | |
31 { static char c; | |
32 | |
33 return (cast(char *)&c)[0 .. 1]; | |
34 } |