https://issues.dlang.org/show_bug.cgi?id=16708

Eyal Lotem <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]

--- Comment #1 from Eyal Lotem <[email protected]> ---
Another way to put this is that:

  x = y;

Uses a "fast path" (memcpy) when the type of 'x' doesn't define opAssign, or a
"slow path" when the type of 'x' defines opAssign.

The fast path does the correct thing and copies fields and padding bytes.
The slow path does the wrong thing and calls opAssign to copy fields, but
leaves padding bytes potentially uninitialized (which makes some operations
*incorrect*, e.g: hashing the object).

--

Reply via email to