[svn r26] * Fixed templates defining a constant value

* Fixed problem with slice-slice copy assignment if a side was a temporary slice
This commit is contained in:
Tomas Lindquist Olsen
2007-10-04 07:35:02 +02:00
parent 879d2f10be
commit 0ba16ebb39
5 changed files with 40 additions and 4 deletions

View File

@@ -1,13 +1,15 @@
module std.stdio;
import std.traits;
void _writef(T)(T t) {
static if(is(T: Object)) _writef(t.toString()); else
static if(is(T==char)) _writef("%c", t); else
static if(is(T==char)) printf("%c", t); else
static if(is(T: char[])) printf("%.*s", t.length, t.ptr); else
static if(isArray!(T)) {
_writef('[');
if (t.length) _writef(t[0]);
for (int i=1; i<elem.length; ++i) { _writef(','); _writef(t[i]); }
for (int i=1; i<t.lengthi; ++i) { _writef(','); _writef(t[i]); }
_writef(']');
} else
static if(is(T==int)) printf("%i", t); else