June 28, 2018
https://issues.dlang.org/show_bug.cgi?id=19037

          Issue ID: 19037
           Summary: Nullable should use moveEmplace to support any type.
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P1
         Component: phobos
          Assignee: nobody@puremagic.com
          Reporter: default_357-line@yahoo.de

For instance, right now Nullable does not work with a struct that has @disable this() and SysTime, because SysTime requires opAssign, which would let the struct notice that it's being called on an uninitialized value.

move/moveEmplace could probably be used to avoid this, by avoiding the opAssign call entirely.

--