Re: [GHC] #1012: ghc panic with mutually recursive modules and template haskell
#1012: ghc panic with mutually recursive modules and template haskell ---+ Reporter: guest | Owner: Type: bug | Status: new Priority: low | Milestone: 7.2.1 Component: Template Haskell |Version: 6.8.2 Resolution:| Keywords: Testcase: TH_import_loop| Blockedby: Difficulty: Unknown | Os: Unknown/Multiple Blocking:| Architecture: Unknown/Multiple Failure: None/Unknown | ---+ Changes (by dleuschner): * cc: leuschner@… (added) * failure: = None/Unknown Comment: Just a note: Of course this is not an important bug/limitation. It would be still nice if it would just work. It took me some time to realise what the problem is, find this bug report and the section in the manual and reorganise the code to accomodate for the limitation. Before that I did several clean/rebuild, rebuild without make -j cycles to be sure that it's not a problem with the build system. It's a bit unexpected because normally GHC just does everything I want (and even more). :-) -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1012#comment:22 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
[GHC] #5499: Tagging constructors with record/product phantom type
#5499: Tagging constructors with record/product phantom type -+-- Reporter: basvandijk| Owner: Type: feature request | Status: new Priority: normal| Component: libraries (other) Version: 7.2.1 |Keywords: Testcase:| Blockedby: Os: Unknown/Multiple |Blocking: Architecture: Unknown/Multiple | Failure: None/Unknown -+-- As mentioned in [http://www.haskell.org/pipermail/glasgow-haskell- users/2011-September/020953.html this discussion] on the `glasgow-haskell- users` mailinglist. I would like to propose making the following changes to [http://www.haskell.org/ghc/docs/latest/html/libraries/ghc-prim-0.2.0.0 /GHC-Generics.html GHC.Generics]: == Proposal == * Add a phantom type to the [http://www.haskell.org/ghc/docs/latest/html/libraries/ghc-prim-0.2.0.0 /GHC-Generics.html#t:C C] type which specifies whether it's a record or a normal product using the empty datatypes: {{{ data Record data Product }}} * Optionally add the type synonyms: {{{ type R1 = M1 (C Record) type P1 = M1 (C Product) }}} * Optionally remove the `conIsRecord` method of the `Constructor` type class. Of course GHC has to be modified too, so that the generated `C`s are properly tagged. == Motiviation == Having the information, whether a constructor is a record or not, statically available instead of only dynamically, has the following advantages: * More efficient: programs can make a static instead of a dynamic choice. (To be fair, the case branches on `conIsRecord` should in most cases be optimized away) * No unnecessary constraints for constructor instances: See [https://github.com/basvandijk/aeson/blob/5bdf30ed4b32f2cc169f6e4e58d1688bcb02c197/Data/Aeson/Types/Internal.hs#L925 the code] that triggered this proposal: {{{ instance (Constructor c, GRecordToObject a, GToJSON a) = GToJSON (C1 c a) where gToJSON m1@(M1 x) | conIsRecord m1 = Object $ gRecordToObject x | otherwise = gToJSON x }}} Note the `GRecordToObject` constraint. This constraint is only really necessary in case of a record. Down the line this extra constraint requires [https://github.com/basvandijk/aeson/blob/5bdf30ed4b32f2cc169f6e4e58d1688bcb02c197/Data/Aeson/Types/Internal.hs#L988 the following] ugly undefined instances: {{{ instance GRecordToObject (a :+: b) where gRecordToObject = undefined instance GRecordToObject U1 where gRecordToObject = undefined instance GRecordToObject (K1 i c) where gRecordToObject = undefined instance GRecordToObject (M1 i c f) where gRecordToObject = undefined }}} == Process == Since `GHC.Generics` is part of the `ghc-prim` package I don't think this proposal has to go through the whole library submission process. But if it must I will have no problem supervising it. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/5499 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
[GHC] #5500: old-time fails to build
#5500: old-time fails to build -+-- Reporter: jmitchell | Owner: Type: bug | Status: new Priority: normal| Component: libraries/old-time Version: 7.0.4 |Keywords: Testcase:| Blockedby: Os: Unknown/Multiple |Blocking: Architecture: Unknown/Multiple | Failure: None/Unknown -+-- When trying to build old-time-1.0.0.7 from hackage via cabal, I get the following error: System/Time.hsc:253:67:Not in scope: type constructor or class `CSUSeconds' -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/5500 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #5449: Build failure with ghc 7.2.1: Missing (or bad) header file: runProcess.h
#5449: Build failure with ghc 7.2.1: Missing (or bad) header file: runProcess.h -+-- Reporter: dsf | Owner: Type: bug | Status: patch Priority: normal| Component: libraries/process Version: 7.2.1 |Keywords: Testcase:| Blockedby: Os: Unknown/Multiple |Blocking: Architecture: Unknown/Multiple | Failure: None/Unknown -+-- Changes (by bergey): * status: new = patch Comment: I can build process if I add a file processFlags.h to the include directory, with these two lines: #define RUN_PROCESS_IN_CLOSE_FDS 0x1 #define RUN_PROCESS_IN_NEW_GROUP 0x2 Not sure if processFlags.h is meant to be part of this package or elsewhere. File contents cribbed from this thread; I can't seem to find the actual patch: http://hackage.haskell.org/trac/ghc/ticket/3994 ubuntu Natty, haskell platform 2011.2, process-1.1.0.0 -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/5449#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #1496: Newtypes and type families combine to produce inconsistent FC(X) axiom sets
#1496: Newtypes and type families combine to produce inconsistent FC(X) axiom sets +--- Reporter: sorear |Owner: simonpj Type: bug | Status: new Priority: low |Milestone: 7.2.1 Component: Compiler (Type checker) | Version: 6.7 Keywords: | Testcase: Blockedby: | Difficulty: Unknown Os: Unknown/Multiple | Blocking: Architecture: Unknown/Multiple | Failure: None/Unknown +--- Changes (by liyang): * cc: hackage.haskell.org@… (added) -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1496#comment:32 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs