passing non-dynamic arrays to variadic functions
ketmar via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Sun Oct 26 17:25:50 PDT 2014
Hello.
let's assume we have this code:
void doWrite(A...) (A args) {
import std.stdio;
import std.conv;
writeln(to!string(args[0]));
}
void main () {
char[3] a0 = "abc";
char[3] a1 = ['a', 'b', 'c'];
doWrite(a0);
doWrite(a1);
}
i don't know why, but this code prints complete garbage each time i run
it. yet if i'll change `doWrite()` invocations to this:
doWrite(a0[]);
doWrite(a1[]);
everything is working fine.
am i doing something wrong in the first sample and missed the relevat
part of documentation, or this is a bug? and do we have workaround for
this?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://lists.puremagic.com/pipermail/digitalmars-d-learn/attachments/20141027/eb05d528/attachment.sig>
More information about the Digitalmars-d-learn
mailing list