diff --git a/src/crystal/system/win32/iocp.cr b/src/crystal/system/win32/iocp.cr index 66261f42e58a..ba87ed123f22 100644 --- a/src/crystal/system/win32/iocp.cr +++ b/src/crystal/system/win32/iocp.cr @@ -96,14 +96,9 @@ module Crystal::IOCP end def self.run(handle, &) - # TODO: implement `pre_initialize` in the interpreter - {% if flag?(:interpreted) %} - yield OverlappedOperation.new(handle) - {% else %} - operation_storage = uninitialized ReferenceStorage(OverlappedOperation) - operation = OverlappedOperation.unsafe_construct(pointerof(operation_storage), handle) - yield operation - {% end %} + operation_storage = uninitialized ReferenceStorage(OverlappedOperation) + operation = OverlappedOperation.unsafe_construct(pointerof(operation_storage), handle) + yield operation end def self.unbox(overlapped : LibC::OVERLAPPED*)