std.concurrency & immutable classes...
Michel Fortin
michel.fortin at michelf.com
Sun Feb 6 17:09:56 PST 2011
On 2011-02-06 16:55:36 -0500, Tomek Sowiński <just at ask.me> said:
> ... doesn't work.
>
> class C {}
> thisTid.send(new immutable(C)());
> receive((immutable C) { writeln("got it!"); });
>
> This throws:
> core.exception.AssertError@/usr/include/d/dmd/phobos/std/variant.d(285):
> immutable(C)
>
> And when I go for Rebindable, I get "Aliases to mutable thread-local
> data not allowed.".
>
> Is there anything I can do?
>
> Overall, I think that's another reason D needs native tail const badly.
> Polymorphic classes are close to being second class citizens just as
> soon const enters. :(
I just made this pull request today:
<https://github.com/D-Programming-Language/dmd/pull/>
If you want to test it, you're very welcome. Here is my development
branch for this feature:
<https://github.com/michelf/dmd/tree/const-object-ref>
--
Michel Fortin
michel.fortin at michelf.com
http://michelf.com/
More information about the Digitalmars-d-learn
mailing list