https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104835
Iain Buclaw <ibuclaw at gdcproject dot org> changed:
What |Removed |Added
----------------------------------------------------------------------------
See Also| |https://github.com/dlang/dm
| |d/pull/13805
--- Comment #4 from Iain Buclaw <ibuclaw at gdcproject dot org> ---
Raised pull request in upstream dmd.
Why the new version works but the old doesn't is anyone's guess though. It's
the difference between:
---
T tmp = T(args);
__builtin_memcpy(p, (void*)&tmp, sizeof(T));
---
and
---
new(p) T(args);
---
As far as I can tell, both should end up with the same outcome.