- Mar 17, 2015
-
-
Richard Eisenberg authored
Release notes in reaction to hvr's comment:26 on #10079. Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D735
-
- Mar 13, 2015
-
-
Iavor S. Diatchki authored
Summary: This implements the new `Typeable` solver: when GHC sees `Typeable` constraints it solves them on the spot. The current implementation creates `TyCon` representations on the spot. Pro: No overhead at all in code that does not use `Typeable` Cons: Code that uses `Typeable` may create multipe `TyCon` represntations. We have discussed an implementation where representations of `TyCons` are computed once, in the module, where a datatype is declared. This would lead to more code being generated: for a promotable datatype we need to generate `2 + number_of_data_cons` type-constructro representations, and we have to do that for all programs, even ones that do not intend to use typeable. I added code to emit warning whenevar `deriving Typeable` is encountered--- the idea being that this is not needed anymore, and shold be fixed. Also, we allow `instance Typeable T` in .hs-boot files, but they result in a warning, and are ignored. This last one was to avoid breaking exisitng code, and should become an error, eventually. Test Plan: 1. GHC can compile itself. 2. I compiled a number of large libraries, including `lens`. - I had to make some small changes: `unordered-containers` uses internals of `TypeReps`, so I had to do a 1 line fix - `lens` needed one instance changed, due to a poly-kinded `Typeble` instance 3. I also run some code that uses `syb` to traverse a largish datastrucutre. I didn't notice any signifiant performance difference between the 7.8.3 version, and this implementation. Reviewers: simonpj, simonmar, austin, hvr Reviewed By: austin, hvr Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D652 GHC Trac Issues: #9858 (cherry picked from commit b359c886)
-
- Feb 23, 2015
-
-
Austin Seipp authored
Signed-off-by:
Austin Seipp <aseipp@pobox.com>
-
- Feb 02, 2015
-
-
Austin Seipp authored
Signed-off-by:
Austin Seipp <aseipp@pobox.com>
-
Austin Seipp authored
Signed-off-by:
Austin Seipp <aseipp@pobox.com>
-
- Jan 28, 2015
-
-
Austin Seipp authored
Signed-off-by:
Austin Seipp <aseipp@pobox.com>
-
- Jan 26, 2015
-
-
Austin Seipp authored
Signed-off-by:
Austin Seipp <aseipp@pobox.com>
-
- Jan 23, 2015
-
-
Simon Peyton Jones authored
(cherry picked from commit 8e774ba1)
-
- Jan 19, 2015
-
-
Austin Seipp authored
Signed-off-by:
Austin Seipp <aseipp@pobox.com>
-
Summary: Package environments are files with package IDs that indicate which packages should be visible; see entry in user guide for details. Reviewers: duncan, austin Reviewed By: duncan, austin Subscribers: carter, thomie Differential Revision: https://phabricator.haskell.org/D558 (cherry picked from commit 099b7676)
-
Summary: see Trac #8624 similar functionality is now available with -ddump-to-file -ddump-splices However, users are already accustomed to -ddump-splices having a particular format, and this format is not completely valid code The goal of -th-file is to dump valid Haskell code Additionally, the convention of -ddump-to-file is to name the file after the flag, so the file is .dump-splices Given that the goal of the new flag is to generate valid Haskell, The extension should be .hs Additionally, -ddump-to-file effects all other dump flags Test Plan: look at the output of using the -th-file flag and compare it to the output of using -ddump-to-file and -ddump-splices I want to add test cases, but just need some pointers on getting started there Reviewers: thomie, goldfire, simonpj, austin Reviewed By: simonpj, austin Subscribers: thomie, carter Differential Revision: https://phabricator.haskell.org/D518 GHC Trac Issues: #8624 (cherry picked from commit 07ace5c2) Conflicts: docs/users_guide/7.12.1-notes.xml
-
- Jan 14, 2015
-
-
(cherry picked from commit 2a103c7d)
-
- Jan 09, 2015
- Dec 23, 2014
-
-
Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D575 (cherry picked from commit c72f61c6)
-
Summary: Mind the capital C. As there is already a flag RecordWildCards with a capital C, we should at least try to be consistent in the spelling of WildCards. Test Plan: validate Reviewers: goldfire, simonpj, austin Reviewed By: simonpj, austin Subscribers: carter, thomie Differential Revision: https://phabricator.haskell.org/D584 (cherry picked from commit 089222c9)
-
- Dec 20, 2014
-
-
Edward Z. Yang authored
Signed-off-by:
Edward Z. Yang <ezyang@cs.stanford.edu>
-
- Dec 19, 2014
-
-
Richard Eisenberg authored
-
Richard Eisenberg authored
-
- Dec 17, 2014
-
-
Simon Peyton Jones authored
There were two related bugs here Trac #9426 We must increment the ic_mod_index field of the InteractiveContext if we have new instances, because we maek DFunIds that should be distinct from previous ones. Previously we were only incrementing when defining new user-visible Ids. The main change is in HscTypes.extendInteractiveContext, which now alwyas bumps the ic_mod_index. I also added a specialised extendInteractiveContextWithIds for the case where we are *only* adding new user-visible Ids. Trac #9424 In HscMain.hscDeclsWithLocations we were failing to use the *tidied* ClsInsts; but the un-tidied ones are LocalIds which causes a later ASSERT error. On the way I realised that, to behave consistently, the tcg_insts and tcg_fam_insts field of TcGblEnv should really only contain instances from the current GHCi command, not all the ones to date. That in turn meant I had to move the code for deleting replacement instances from addLocalInst, addLocalFamInst to HscTypes.extendInteractiveContext
-
- Dec 16, 2014
-
-
Gabor Greif authored
-
- Dec 15, 2014
-
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
THe documentation in 7.9.4 of promoted list and tuple types was misleading, which led to Trac #9882. This patch makes explicit that only type-level with two or more elements can have the quote omitted.
-
Facundo Domínguez authored
Test Plan: ./validate Reviewers: goldfire, austin Reviewed By: austin Subscribers: mboes, carter, thomie Differential Revision: https://phabricator.haskell.org/D568 GHC Trac Issues: #7015
-
- Dec 10, 2014
-
-
Richard Eisenberg authored
-
David Feuer authored
Summary: `splitAt` is stricter than the Report specifies, so we should say so. Reviewers: hvr, austin Reviewed By: austin Subscribers: carter, thomie Projects: #ghc Differential Revision: https://phabricator.haskell.org/D562 GHC Trac Issues: #9870
-
Facundo Domínguez authored
Summary: As proposed in [1], this extension introduces a new syntactic form `static e`, where `e :: a` can be any closed expression. The static form produces a value of type `StaticPtr a`, which works as a reference that programs can "dereference" to get the value of `e` back. References are like `Ptr`s, except that they are stable across invocations of a program. The relevant wiki pages are [2, 3], which describe the motivation/ideas and implementation plan respectively. [1] Jeff Epstein, Andrew P. Black, and Simon Peyton-Jones. Towards Haskell in the cloud. SIGPLAN Not., 46(12):118–129, September 2011. ISSN 0362-1340. [2] https://ghc.haskell.org/trac/ghc/wiki/StaticPointers [3] https://ghc.haskell.org/trac/ghc/wiki/StaticPointers/ImplementationPlan Authored-by:
Facundo Domínguez <facundo.dominguez@tweag.io> Authored-by:
Mathieu Boespflug <m@tweag.io> Authored-by:
Alexander Vershilov <alexander.vershilov@tweag.io> Test Plan: `./validate` Reviewers: hvr, simonmar, simonpj, austin Reviewed By: simonpj, austin Subscribers: qnikst, bgamari, mboes, carter, thomie, goldfire Differential Revision: https://phabricator.haskell.org/D550 GHC Trac Issues: #7015
-
Edward Z. Yang authored
Signed-off-by:
Edward Z. Yang <ezyang@cs.stanford.edu>
-
- Dec 08, 2014
-
-
Richard Eisenberg authored
-
- Dec 06, 2014
-
-
Austin Seipp authored
Signed-off-by:
Austin Seipp <austin@well-typed.com>
-
Austin Seipp authored
The documentation on what warnings -W/-Wall enable was slightly out of date, so lets fix that. Signed-off-by:
Austin Seipp <austin@well-typed.com>
-
carlostome authored
Summary: Added flag -fwarn-unticked-promoted-constructors Test Plan: test T9778 under tests/rename/should_compile Reviewers: jstolarek, simonpj, austin Reviewed By: jstolarek, simonpj, austin Subscribers: simonpj, goldfire, jstolarek, thomie, carter Differential Revision: https://phabricator.haskell.org/D534 GHC Trac Issues: #9778
-
- Dec 05, 2014
-
-
Simon Marlow authored
Also includes a fix for the segfaults on Windows caused by the original version of this patch. This reverts commit 4b51194d.
-
- Dec 03, 2014
-
-
Edward Z. Yang authored
Summary: It's not great, but it preserves a nice invariant that every Haskell source file has an object file (we already have a hack in place ensure this is the case for hs-boot files) and further ensures every package has a library associated with it (which would not be the case if the package had all signatures and we didn't make object files.) Contains Cabal submodule update. Signed-off-by:
Edward Z. Yang <ezyang@cs.stanford.edu> Test Plan: validate Reviewers: simonpj, austin Subscribers: carter, thomie Differential Revision: https://phabricator.haskell.org/D548
-
- Dec 02, 2014
-
-
Simon Peyton Jones authored
This reverts commit b5e8b3b1. I reverted it because one of these two patches 9e6e4796 Add purgeObj() b5e8b3b1 Make the linker API thread-safe causes a seg-fault on Windows. The seg-fault happens immediately the linker is invoked, in ghci or in Template Haskell. I believe that it is the "linker API thread-safe" commit that causes the seg-fault; it happens even if the "purgeObj" commit alone is reverted. But since the two patches mess with the same code, to revert the "linker API" patch I had revert both.
-
- Dec 01, 2014
-
-
Simon Peyton Jones authored
This finally solves the issue of instance-method signatures that are more polymorphic than the instanted class method. See Note [Instance method signatures] in TcInstDcls. A very nice fix for the two Trac tickets above.
-
- Nov 30, 2014
-
-
Edward Z. Yang authored
Signed-off-by:
Edward Z. Yang <ezyang@cs.stanford.edu>
-
- Nov 28, 2014
-
-
thomasw authored
Summary: Add support for Partial Type Signatures, i.e. holes in types, see: https://ghc.haskell.org/trac/ghc/wiki/PartialTypeSignatures This requires an update to the Haddock submodule. Test Plan: validate Reviewers: austin, goldfire, simonpj Reviewed By: simonpj Subscribers: thomie, Iceland_jack, dominique.devriese, simonmar, carter, goldfire Differential Revision: https://phabricator.haskell.org/D168 GHC Trac Issues: #9478
-