Once again with a .1 release, I cannot reproduce.
// TODO: this assert pulls in half of phobos. we need to work out an alternative assert strategy.
// static if (!is(T == class) && hasAliasing!T) if (!__ctfe)
// {
// import std.exception : doesPointTo;
// assert(!doesPointTo(source, source) && !hasElaborateMove!T),
// "Cannot move object with internal pointer unless `opPostMove` is defined.");
// }
From lifetime.d, are you on an old druntime or something? (This has been commented out for apparently 4 years).
Comment #6 by dlang-bugzilla — 2023-05-07T22:13:37Z
Please pay attention to the
public import std.algorithm.mutation : move;
line. Yes, it doesn't happen with the core.lifetime implementation. But, again, I don't think the problem is in Phobos or Druntime, it seems to be in the compiler. And yeah, since it's deep in the backend, it might not be reproducible on other platforms.
I haven't reduced it further because it's easy to work around (use the core.lifetime implementation) but there is still probably a bug in the backend.
Comment #7 by dlang-bugzilla — 2023-05-07T22:22:19Z
(In reply to mhh from comment #5)
>
> Once again with a .1 release, I cannot reproduce.
If you're still having trouble reproducing it, it does reproduce on run.dlang.io.
Comment #8 by maxhaton — 2023-05-07T23:07:04Z
It seems to only reproduce with rdmd
Comment #9 by maxhaton — 2023-05-07T23:08:27Z
^^ ignore that
Comment #10 by maxhaton — 2023-05-07T23:15:27Z
I actually can reproduce with ldc2 on my M1 macbook
Comment #11 by dlang-bugzilla — 2023-05-07T23:22:17Z
(In reply to mhh from comment #10)
> I actually can reproduce with ldc2 on my M1 macbook
That's interesting, maybe there is more than one bug here.
Comment #12 by robert.schadek — 2024-12-13T19:28:40Z