Commits

Show all
Author Commit Message Labels Comments Date
Max Bolingbroke
Support code generation for unboxed-tuple function arguments This is done by a 'unarisation' pre-pass at the STG level which translates away all (live) binders binding something of unboxed tuple type. This has the following knock-on effects: * The subkind hierarchy is vastly simplified (no UbxTupleKind or ArgKind) * Various relaxed type checks in typechecker, 'foreign import prim' etc * All case binders may be live at the Core level
Max Bolingbroke
Remove StgTypeArg since it was never used and is probably broken anyway
Max Bolingbroke
Remove the unused Type field from StgLam
Paolo Capriotti
Follow changes in Cabal.
Paolo Capriotti
Add a fixity environment to InteractiveContext (#2947)
Paolo Capriotti
Simplify the behavior of package db flags. Previously, the `-no-user-package` and `-no-global-package` flags affected the "initial" stack only, while `user-package` and `global-packages` appended to the end of the stack. This commit changes the behavior of those flags, so that they are always applied to the stack as a whole. The effect of the GHC_PACKAGE_PATH environment variable has also been changed: terminating it with a separator now…
Paolo Capriotti
Update documentation of the package db flags.
Paolo Capriotti
Rename package-conf flags to package-db. Rename package database flags in both GHC and ghc-pkg so that they are consistent with Cabal nomenclature. Add a version check to the build system so that the correct set of package db flags are used when the bootstrapping GHC has version < 7.5.
Paolo Capriotti
Add flags to manipulate package db stack (#5977) Introduce new flags to allow any package database stack to be set up. The `-no-user-package-conf` and `-no-global-package-conf` flags remove the corresponding package db from the initial stack, while `-user-package-conf` and `-global-package-conf` push it back on top of the stack.
Ian Lynagh
Tweak the lexer: In particular, improve notFollowedBy and friends We were hitting a problem when reading the LANGUAGE/OPTIONS pragmas from GHC.TypeLits, where the buffer ended "{-". The rules for the start-comment lexeme check that "{-" is not followed by "#", but the test returned False when there was no next character. Therefore we were lexing this as as an open-curly lexeme (only consuming the "{", and not reaching the end of the buffer), which meant the opti…
Paolo Capriotti
Use pprInfixName in pprInfo (#6091) Surround a name in backticks when printing an infix declaration in GHCi.
Simon Peyton Jones
Fix the the pure unifier so that it unifies kinds When unifying two type variables we must unify their kinds. The pure *matcher* was doing so, but the pure *unifier* was not. This patch fixes Trac #6015, where an instance lookup was failing when it should have succeeded. I removed a bunch of code aimed at support sub-kinding. It's tricky, ad-hoc, and I don't think its necessary any more. Anything we can do to simplify the sub-kinding story is we…
Simon Peyton Jones
Merge branch 'master' of http://darcs.haskell.org/ghc
Simon Peyton Jones
Delete dead code mkIParamTyCon
Simon Peyton Jones
Refactor LHsTyVarBndrs to fix Trac #6081 This is really a small change, but it touches a lot of files quite significantly. The real goal is to put the implicitly-bound kind variables of a data/class decl in the right place, namely on the LHsTyVarBndrs type, which now looks like data LHsTyVarBndrs name = HsQTvs { hsq_kvs :: [Name] , hsq_tvs :: [LHsTyVarBndr name] } This little change made the type checker neater…
simonmar
Handle cases with no alternatives in GHCi Fixes cgrun045(ghci) amongst others
Max Bolingbroke
Fix bug in expandTypeSynonyms that could rarely cause problems
Simon Peyton Jones
Comments only
Simon Peyton Jones
Merge branch 'master' of http://darcs.haskell.org//ghc
Simon Peyton Jones
Re-do the "function application discount" (fixes Trac #6048) * Undoes Max's very aggressive function-inlining change (see comments with Trac #6048) * Resticts function application discount to functions that occur just once in the body. It was the multiple occurrences that led to the exponential behavour in Trac #6048. See Note [Function application discount] in CoreUnfold. Module binary sizes are down 2% on average, which is good. Allocations wob…
Simon Peyton Jones
Take care not to mix polymorphic and unlifted bindings in a group Fixes Trac #6078
Simon Peyton Jones
Wibbles to 'simplify the SimplCont data type'
Simon Peyton Jones
Simplify the SimplCont data type * Put the result type in the Stop continuation * No need for the alts type in Select The result is a modest but useful simplification
Simon Peyton Jones
Merge branch 'ghc-new-flavor'
Simon Peyton Jones
Make fresh variables when decomposing Givens This turns out to be important becuase we don't have a form for superclass selection in TcCoercion (we could but we don't). Se comments with xCtFlavor_cache, the Given case.
Simon Peyton Jones
Use fresh uniques when unboxing coercions in the desugarer This is kosher, and turns out to be vital when we have more complicate evidence terms.
Simon Peyton Jones
Cosmetics
Simon Peyton Jones
Be a little less aggressive about inlining (fixes Trac #5623) When inlining, we are making a copy of the expression, so we have to be careful about duplicating work. Previously we were using exprIsCheap for that, but it is willing to duplicate a cheap primop -- and that is terribly bad if it happens inside some inner array loop (Trac #5623). So now we use a new function exprIsWorkFree. Even then there is some wiggle room: see Note [exprIsWorkFree] in C…
Ian Lynagh
Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc
Paolo Capriotti
Enable FileLock for win32 (#4363)
  1. Prev
  2. Next