On Wednesday, 21 May 2014 at 20:19:32 UTC, Ali Çehreli wrote:
I think this is a known issue with immutable and Variant, which
std.concurrency uses for unknown messages. This looks related:
https://issues.dlang.org/show_bug.cgi?id=5538
std.concurrency actually uses Variant as the transport mechanism
for all messages, and this is most likely the cause of your
problem. If this is just to make a class pass type checking for
transport, casting to shared is probably a better bet. The real
solution is to make std.concurrency effectively allow uniquely
referenced classes to be transferred, but that's a bit farther
out.