[GHC] #12795: Add more types to System.Posix.Types
GHC
ghc-devs at haskell.org
Sun Dec 18 15:52:10 UTC 2016
#12795: Add more types to System.Posix.Types
-------------------------------------+-------------------------------------
Reporter: DanielG | Owner: DanielG
Type: feature request | Status: closed
Priority: normal | Milestone: 8.2.1
Component: libraries/base | Version:
Resolution: fixed | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s): Phab:D2664
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Ryan Scott <ryan.gl.scott@…>):
In [changeset:"513eb6a0638a1c64b9d76bcab39ed80cdd9dbb27/ghc"
513eb6a0/ghc]:
{{{
#!CommitTicketReference repository="ghc"
revision="513eb6a0638a1c64b9d76bcab39ed80cdd9dbb27"
Fix #12998 by removing CTimer
Summary:
CTimer is a wrapper around `timer_t`, which is a typedef for `void*`
on most platforms. The issue is that GHC's `FPTOOLS_CHECK_HTYPE` is not
robust
enough to discern pointer types from non-pointer types, so it mistakenly
labels
`timer_t` as a `Double` or `Int32` (depending on how many bits a pointer
takes
up on your platform). This wreaks havoc when trying to give it certain
type
class instances, as noted in
https://phabricator.haskell.org/rGHCffc2327070dbb664bdb407a804121eacb2a7c734.
For now, the simplest thing to do would be removing `CTimer`, since:
1. The original author (@DanielG) didn't have a particular use in mind for
`timer_t` when he fixed #12795.
2. `CTimer` hasn't appeared in a release of `base` yet.
Fixes #12998.
Reviewers: austin, hvr, bgamari, DanielG, trofi
Reviewed By: bgamari, trofi
Subscribers: thomie, DanielG, erikd
Differential Revision: https://phabricator.haskell.org/D2876
GHC Trac Issues: #12795, #12998
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12795#comment:6>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list