new static array
Ali Çehreli via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Tue Sep 1 23:04:40 PDT 2015
On 09/01/2015 09:47 AM, anonymous wrote:> Hello,
>
> I tried to send a string[4] with std.concurrency:
>
> import std.concurrency;
> import std.stdio;
> void fun() {
> receive((string[4] data) { writeln(data);});
> }
>
> void main() {
> string[4] data;
> auto tid = spawn(&fun);
> send(tid, data);
> }
>
> I got (dmd 2.068)
> /usr/include/dmd/phobos/std/variant.d(633): Error: new can only create
> structs, dynamic arrays or class objects, not string[4]'s
> [...]
>
> with int[4] it compiles and runs. int[][4] fails. Is this a bug?
I think so.
> Simple workaround: send a slice.
Another one: Wrap the array in a struct:
struct Data
{
string[4] s;
}
Ali
More information about the Digitalmars-d-learn
mailing list