
#15995: Make Control.Concurrent.QSem a newtype -------------------------------------+------------------------------------- Reporter: chessai | Owner: (none) Type: feature | Status: new request | Priority: normal | Milestone: 8.6.3 Component: | Version: 8.6.2 libraries/base | Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- {{{#!hs data QSem = QSem !(MVar (Int, [MVar ()], [MVar ()])) }}} I think this should be a newtype. The strictness annotations on the outter `MVar` could just be at each site where pattern matching on the `QSem`. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15995 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler