summaryrefslogtreecommitdiff
path: root/compiler
Commit message (Collapse)AuthorAgeFilesLines
* Change more uses of sortLe to sortByIan Lynagh2012-06-2210-30/+25
|
* Remove some uses of sortLeIan Lynagh2012-06-226-20/+13
| | | | | | Technically the behaviour of sortWith has changed, as it used x `le` y = get_key x < get_key y (note "<" rather than "<="), but I assume that that was just a mistake.
* Remove some more unused functionsIan Lynagh2012-06-221-28/+0
|
* Remove a GHC 6.4 workaroundIan Lynagh2012-06-221-6/+1
|
* Remove 'on' from UtilIan Lynagh2012-06-225-5/+5
| | | | We can now rely on it being available from Data.Function
* Remove some more unused function from ListSetOpsIan Lynagh2012-06-221-22/+0
|
* Remove an unused functionIan Lynagh2012-06-221-20/+0
|
* Remove duplicated commentJose Pedro Magalhaes2012-06-211-2/+0
|
* Allow deriving Generic1Jose Pedro Magalhaes2012-06-214-169/+521
| | | | | | | | | | | | This completes the support for generic programming introduced in GHC 7.2. Generic1 allows defining generic functions that operate on type containers, such as `fmap`, for instance. Along the way we have fixed #5936 and #5939, allowing deriving Generic/Generic1 for data families, and disallowing deriving Generic/Generic1 for instantiated types. Most of this patch is Nicolas Frisby's work.
* Merge branch 'master' of http://darcs.haskell.org/ghcSimon Peyton Jones2012-06-2115-219/+169
|\
| * Fix whitespace in cmm/PprCmmDecl.hsIan Lynagh2012-06-201-9/+2
| |
| * Remove some more redundant Platform argumentsIan Lynagh2012-06-203-10/+10
| |
| * Remove some more redundant Platform argumentsIan Lynagh2012-06-206-72/+64
| |
| * Remove some redundant Platform argumentsIan Lynagh2012-06-202-17/+16
| |
| * Fix whitespace in cmm/PprCmmExpr.hsIan Lynagh2012-06-201-24/+17
| |
| * Fix whitespace in codeGen/StgCmmGran.hsIan Lynagh2012-06-201-32/+25
| |
| * Make -fgransim a dynamic flagIan Lynagh2012-06-204-15/+14
| |
| * Make -fparallel a dynamic flagIan Lynagh2012-06-205-9/+6
| |
| * Fix whitespace in codeGen/CgParallel.hsIan Lynagh2012-06-201-29/+22
| |
| * Remove some cruft from StaticFlagParserIan Lynagh2012-06-201-10/+1
| | | | | | | | | | Also, -read-dot-ghci is now gone. We now have -no-ignore-dot-ghci instead.
* | Remove the USAVOURY HACK in simplifyInferSimon Peyton Jones2012-06-211-74/+30
|/ | | | | See the discussion in Trac #4361. The change fixes a regression in test IPRun.
* Follow changes in baseIan Lynagh2012-06-191-4/+2
|
* Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghcIan Lynagh2012-06-191-1/+1
|\
| * Template Haskell: StringPrimL now takes [Word8]Reiner Pope2012-06-191-1/+1
| |
* | Build fixesIan Lynagh2012-06-181-1/+0
| |
* | Move and rename opt_HiVersionIan Lynagh2012-06-184-8/+8
| | | | | | | | It isn't really an option at all
* | Make -firrefutable-tuples a dynamic flagIan Lynagh2012-06-184-6/+5
| |
* | Make -ignore-dot-ghci a dynamic flagIan Lynagh2012-06-182-4/+8
| |
* | Make -dppr-cols a dynamic flagIan Lynagh2012-06-186-28/+16
|/
* Remove redundant warning suppression in basicTypes/Literal.lhsIan Lynagh2012-06-181-7/+0
|
* Make -dtrace-level a dynamic flagIan Lynagh2012-06-184-13/+10
|
* Remove a redundant importIan Lynagh2012-06-161-1/+0
|
* Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghcIan Lynagh2012-06-164-8/+35
|\
| * Don't put auto sccs on INLINE functions (#6131)Simon Marlow2012-06-151-3/+33
| | | | | | | | | | | | There was also a bug caused by INLINEs getting SCCs, but unfortunately I have lost the test case. The Note in the code describes the problem though.
| * small tidyupSimon Marlow2012-06-152-4/+1
| |
| * fix ticket number in commentSimon Marlow2012-06-151-1/+1
| |
* | Remove a workaround for building with GHC 6.9Ian Lynagh2012-06-161-4/+0
| |
* | Simplify some codeIan Lynagh2012-06-141-2/+1
|/ | | | We were pointlessly going from String to SDoc and back again
* Make -dppr-case-as-let a dynamic flagIan Lynagh2012-06-143-30/+35
|
* Fix whitespace in coreSyn/PprCore.lhsIan Lynagh2012-06-141-119/+112
|
* Be strict in the DynFlags inside an SDocIan Lynagh2012-06-141-1/+1
| | | | | | This is safe now that the tracingDynFlags is not just a call to panic. Not sure if it was causing a problem as it was, but this change should help make sure we don't get a chain of thunks built up inside SDocs.
* Change -dppr-user-length from a static to a dynamic flagIan Lynagh2012-06-146-18/+28
|
* Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghcIan Lynagh2012-06-1439-480/+309
|\
| * Merge branch 'master' of http://darcs.haskell.org/ghcSimon Peyton Jones2012-06-1313-108/+90
| |\
| * | Simplify the implementation of Implicit ParametersSimon Peyton Jones2012-06-1339-480/+309
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch re-implements implicit parameters via a class with a functional dependency: class IP (n::Symbol) a | n -> a where ip :: a This definition is in the library module GHC.IP. Notice how it use a type-literal, so we can have constraints like IP "x" Int Now all the functional dependency machinery works right to make implicit parameters behave as they should. Much special-case processing for implicit parameters can be removed entirely. One particularly nice thing is not having a dedicated "original-name cache" for implicit parameters (the nsNames field of NameCache). But many other cases disappear: * BasicTypes.IPName * IPTyCon constructor in Tycon.TyCon * CIPCan constructor in TcRnTypes.Ct * IPPred constructor in Types.PredTree Implicit parameters remain special in a few ways: * Special syntax. Eg the constraint (IP "x" Int) is parsed and printed as (?x::Int). And we still have local bindings for implicit parameters, and occurrences thereof. * A implicit-parameter binding (let ?x = True in e) amounts to a local instance declaration, which we have not had before. It just generates an implication contraint (easy), but when going under it we must purge any existing bindings for ?x in the inert set. See Note [Shadowing of Implicit Parameters] in TcSimplify * TcMType.sizePred classifies implicit parameter constraints as size-0, as before the change There are accompanying patches to libraries 'base' and 'haddock' All the work was done by Iavor Diatchki
* | | Rename Coverage.dflags to Coverage.tte_dflagsIan Lynagh2012-06-141-3/+3
| | | | | | | | | | | | | | | The record field was confusingly using the same name that the value normally uses.
* | | Fix whitespace in deSugar/Coverage.lhsIan Lynagh2012-06-141-231/+224
| | |
* | | Stop exporting, and stop using, some deprecated functionsIan Lynagh2012-06-133-13/+6
| | |
* | | Use 'ppr' rather than 'pprCLabel platform'Ian Lynagh2012-06-131-19/+19
| | | | | | | | | | | | Means we can stop passing platform around as much.
* | | Remove more redundant Platform argumentsIan Lynagh2012-06-131-25/+24
| | |