X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=GHC%2FEvent%2FPoll.hsc;h=e34b47eb242607cd0b38af5753ac171db19dcfd0;hb=6abdb1cebbb6f0f0b492ba98907056d11064bc83;hp=82acc6269f5212ed7e901e26306de42f3a40cc93;hpb=5caacc93b6904c13dd363f3ba4815c25c6c4fb26;p=ghc-base.git diff --git a/GHC/Event/Poll.hsc b/GHC/Event/Poll.hsc index 82acc62..e34b47e 100644 --- a/GHC/Event/Poll.hsc +++ b/GHC/Event/Poll.hsc @@ -107,15 +107,24 @@ data PollFd = PollFd { newtype Event = Event CShort deriving (Eq, Show, Num, Storable, Bits) +-- We have to duplicate the whole enum like this in order for the +-- hsc2hs cross-compilation mode to work +#ifdef POLLRDHUP #{enum Event, Event , pollIn = POLLIN , pollOut = POLLOUT -#ifdef POLLRDHUP , pollRdHup = POLLRDHUP -#endif , pollErr = POLLERR , pollHup = POLLHUP } +#else +#{enum Event, Event + , pollIn = POLLIN + , pollOut = POLLOUT + , pollErr = POLLERR + , pollHup = POLLHUP + } +#endif fromEvent :: E.Event -> Event fromEvent e = remap E.evtRead pollIn .|.