Skip to content

winio: Add support to iserv for winio

Tamar Christina requested to merge Phyx/ghc:wip/T2095 into master

This fixes it so that iserv gets the same dynamic dispatch support that the rest of the runtime has for picking between I/O managers.

It also fixes some probably safe but not entirely cludge we added years ago to coerce a HANDLE into a CInt because usually only the lower bits are set. But a HANDLE is a pointer, so it'll be longer than a CInt on 64-bit platforms.

It's usually fine since there's usually not enough Handles open to exceed the limit but lets play it safe.

This requires some fixes in process to work properly https://github.com/haskell/process/pull/234 because of this I don't know if a backport is warranted or not or how to do that.

Fix #20955 (closed)

Edited by Tamar Christina

Merge request reports