Simon Marlow [Fri, 26 Nov 2010 12:53:36 +0000 (12:53 +0000)]
Document the behaviour of fenv.h functions with GHC (#4391)
Ian Lynagh [Sat, 27 Nov 2010 23:58:05 +0000 (23:58 +0000)]
Remove the no-ghci-lib warning in ghc-pkg
GHCi libs are no longer necessary, as we can use the .a or .so versions
instead.
Ian Lynagh [Sat, 27 Nov 2010 22:39:45 +0000 (22:39 +0000)]
Add GNU-variant support to the .a parser, and other improvements/tidyups
Ian Lynagh [Sat, 27 Nov 2010 19:16:46 +0000 (19:16 +0000)]
Re-indent only
Ian Lynagh [Sat, 27 Nov 2010 19:09:07 +0000 (19:09 +0000)]
Improve linker debugging for archive files
Ian Lynagh [Sat, 27 Nov 2010 17:30:00 +0000 (17:30 +0000)]
Always enable the archive-loading code
If the GHCi .o lib doesn't exist, load the .a instead
Roman Leshchinskiy [Sat, 27 Nov 2010 12:50:25 +0000 (12:50 +0000)]
Inherit the ForceSpecConstr flag in non-recursive nested bindings
This makes sure that join points are fully specialised in loops which are
marked as ForceSpecConstr.
Roman Leshchinskiy [Sat, 27 Nov 2010 12:35:28 +0000 (12:35 +0000)]
Document -ddump-rule-firings and -ddump-rule-rewrites
Roman Leshchinskiy [Sat, 27 Nov 2010 12:20:22 +0000 (12:20 +0000)]
New flag -dddump-rule-rewrites
Now, -ddump-rule-firings only shows the names of the rules that fired (it would
show "before" and "after" with -dverbose-core2core previously) and
-ddump-rule-rewrites always shows the "before" and "after" bits, even without
-dverbose-core2core.
simonpj@microsoft.com [Fri, 26 Nov 2010 16:24:09 +0000 (16:24 +0000)]
Acutally, wild-card variables *can* have occurrences
This patch removes the Lint test, and comments why
simonpj@microsoft.com [Fri, 26 Nov 2010 13:32:10 +0000 (13:32 +0000)]
Tidy up the handling of wild-card binders, and make Lint check it
See Note [WildCard binders] in SimplEnv. Spotted by Roman.
simonpj@microsoft.com [Thu, 25 Nov 2010 17:23:56 +0000 (17:23 +0000)]
Substitution should just substitute, not optimise
This was causing Trac #4524, by optimising
(e |> co) to e
on the LHS of a rule. Result, the template variable
'co' wasn't bound any more.
Now that substition doesn't optimise, it seems sensible to call
simpleOptExpr rather than substExpr when substituting in the
RHS of rules. Not a big deal either way.
simonpj@microsoft.com [Thu, 25 Nov 2010 17:21:38 +0000 (17:21 +0000)]
Make SpecConstr "look through" identity coercions
simonpj@microsoft.com [Thu, 25 Nov 2010 17:20:11 +0000 (17:20 +0000)]
Comment only
simonpj@microsoft.com [Mon, 1 Nov 2010 08:07:48 +0000 (08:07 +0000)]
White space only
Simon Marlow [Thu, 25 Nov 2010 13:57:29 +0000 (13:57 +0000)]
Keep a maximum of 6 spare worker threads per Capability (#4262)
Simon Marlow [Mon, 15 Nov 2010 09:54:44 +0000 (09:54 +0000)]
Unicide OtherNumber category should be allowed in identifiers (#4373)
Ben Lippmeier [Fri, 26 Nov 2010 04:40:36 +0000 (04:40 +0000)]
vectoriser: fix warning
Ben Lippmeier [Fri, 26 Nov 2010 04:29:50 +0000 (04:29 +0000)]
vectoriser: fix warning
Ben Lippmeier [Fri, 26 Nov 2010 04:29:00 +0000 (04:29 +0000)]
vectoriser: take class directly from the instance tycon
Ben Lippmeier [Thu, 25 Nov 2010 07:32:01 +0000 (07:32 +0000)]
vectoriser: comments only
Ben Lippmeier [Thu, 25 Nov 2010 06:23:49 +0000 (06:23 +0000)]
vectoriser: follow changes in mkClass
Ben Lippmeier [Thu, 25 Nov 2010 06:23:32 +0000 (06:23 +0000)]
vectoriser: tracing wibbles
benl@ouroborus.net [Tue, 14 Sep 2010 06:29:39 +0000 (06:29 +0000)]
mkDFunUnfolding wants the type of the dfun to be a PredTy
Ben Lippmeier [Thu, 25 Nov 2010 06:09:04 +0000 (06:09 +0000)]
vectoriser: fix conflicts
benl@ouroborus.net [Tue, 14 Sep 2010 06:29:03 +0000 (06:29 +0000)]
Comments and formatting only
benl@ouroborus.net [Thu, 9 Sep 2010 08:04:05 +0000 (08:04 +0000)]
Comments and formatting to type environment vectoriser
Ian Lynagh [Wed, 24 Nov 2010 23:15:14 +0000 (23:15 +0000)]
Don't mix implicit and explicit layout
Ian Lynagh [Wed, 24 Nov 2010 23:06:55 +0000 (23:06 +0000)]
Whitespace only
Ian Lynagh [Wed, 24 Nov 2010 22:05:07 +0000 (22:05 +0000)]
Separate NondecreasingIndentation out into its own extension
Ian Lynagh [Wed, 24 Nov 2010 20:59:57 +0000 (20:59 +0000)]
Add another GHC layout rule relaxation to RelaxedLayout
Ian Lynagh [Wed, 24 Nov 2010 14:04:55 +0000 (14:04 +0000)]
Remove an unused build system variable: GhcDir
Ian Lynagh [Wed, 24 Nov 2010 14:04:15 +0000 (14:04 +0000)]
Remove unused build system variable: GhcHasEditline
Ian Lynagh [Wed, 24 Nov 2010 14:00:52 +0000 (14:00 +0000)]
Remove unused variables from the build system: HBC, NHC, MKDEPENDHS
Ian Lynagh [Tue, 23 Nov 2010 23:35:36 +0000 (23:35 +0000)]
Remove references to Haskell 98
They are no longer right, as we have Haskell' generating new Haskell
standards.
Ian Lynagh [Tue, 23 Nov 2010 17:06:21 +0000 (17:06 +0000)]
Tweak a configure test
Ian Lynagh [Tue, 23 Nov 2010 17:05:41 +0000 (17:05 +0000)]
Add a configure test for the visibility hidden attribute
Simon Marlow [Fri, 29 Oct 2010 09:28:43 +0000 (09:28 +0000)]
sanity: fix places where we weren't filling fresh memory with 0xaa
Ian Lynagh [Sun, 21 Nov 2010 14:44:55 +0000 (14:44 +0000)]
Just some alpha renaming
pepeiborra@gmail.com [Mon, 15 Nov 2010 22:36:23 +0000 (22:36 +0000)]
Fix bug #3165 (:history throws irrefutable pattern failed)
I ran across this bug and took the time to fix it, closing
a long time due TODO in InteractiveEval.hs
Instead of looking around to find the enclosing declaration
of a tick, this patch makes use of the information already collected during the
coverage desugaring phase
Ian Lynagh [Sun, 21 Nov 2010 18:35:20 +0000 (18:35 +0000)]
For bindists, build ghc-pwd with stage 1
rather then the bootstrapping compiler. This fixes problems where the
bootstrapping compiler dynamically links against libraries not on the
target machine.
Ian Lynagh [Sun, 21 Nov 2010 18:33:42 +0000 (18:33 +0000)]
Makefile tweak
Ian Lynagh [Sun, 21 Nov 2010 17:49:16 +0000 (17:49 +0000)]
Fix a makefile include ordering sanity check
Ian Lynagh [Sat, 20 Nov 2010 21:53:40 +0000 (21:53 +0000)]
Add an extension for GHC's layout-rule relaxations
Still TODO: Add the other relaxation (#1060) and update the alternative
layout rule to use the extension.
Ian Lynagh [Sat, 20 Nov 2010 17:37:35 +0000 (17:37 +0000)]
Tweak the bindist configure.ac.in
Ian Lynagh [Sat, 20 Nov 2010 17:02:45 +0000 (17:02 +0000)]
configure.ac tweaks
Ian Lynagh [Sat, 20 Nov 2010 15:59:20 +0000 (15:59 +0000)]
When testing the bindist, tell it where gcc is
The location isn't baked into the bindist, as it may differ from
machine to machine.
simonpj@microsoft.com [Fri, 19 Nov 2010 10:01:53 +0000 (10:01 +0000)]
Comments only
Roman Leshchinskiy [Thu, 18 Nov 2010 21:28:39 +0000 (21:28 +0000)]
ForceSpecConstr now forces specialisation even for arguments which aren't scrutinised
simonpj@microsoft.com [Thu, 18 Nov 2010 12:05:33 +0000 (12:05 +0000)]
Move the superclass generation to the canonicaliser
Doing superclass generation in the canonicaliser (rather than
TcInteract) uses less code, and is generally more efficient.
See Note [Adding superclasses] in TcCanonical.
Fixes Trac #4497.
simonpj@microsoft.com [Thu, 18 Nov 2010 09:00:57 +0000 (09:00 +0000)]
Fix the generation of in-scope variables for IfaceLint check
simonpj@microsoft.com [Thu, 18 Nov 2010 09:00:34 +0000 (09:00 +0000)]
Comments only
simonpj@microsoft.com [Thu, 18 Nov 2010 09:00:28 +0000 (09:00 +0000)]
Omit bogus test for -XDeriveFunctor
It was duplicated in the case of 'deriving( Functor )'
and wrong for 'deriving( Foldable )'
simonpj@microsoft.com [Thu, 18 Nov 2010 08:53:06 +0000 (08:53 +0000)]
Improve error message on advice from a user
See Trac #4499
Ian Lynagh [Wed, 17 Nov 2010 16:30:31 +0000 (16:30 +0000)]
Fix the type sanity test in genprimopcode's Syntax.hs
We assume this is what it's supposed to be checking. Certainly the old
test (t2 == t2) can't be right.
Spotted by Andres Loeh.
Ian Lynagh [Wed, 17 Nov 2010 15:52:59 +0000 (15:52 +0000)]
Build random with the stage2 compiler
Simon Marlow [Wed, 17 Nov 2010 12:49:26 +0000 (12:49 +0000)]
remove -XNoMonomorphismRestriction
This was apparently needed at some point during the new typechecker
development, but does not seem to be required now.
Simon Marlow [Wed, 17 Nov 2010 11:37:05 +0000 (11:37 +0000)]
add some {-# LANGUAGE BangPatterns #-} to mollify GHC
scpmw@leeds.ac.uk [Fri, 5 Nov 2010 15:16:55 +0000 (15:16 +0000)]
Eventlog: Put correct size for startup event
simonpj@microsoft.com [Wed, 17 Nov 2010 11:15:59 +0000 (11:15 +0000)]
Document SPECIALISE for imported functions
This is a really useful new facility, but I'd forgotten to document it.
Pls merge to 7.0 branch
simonpj@microsoft.com [Wed, 17 Nov 2010 10:10:58 +0000 (10:10 +0000)]
Fix Trac #4498: bang-pattern bindings are monomorphic
This patch forces bang patterns to be monomorphic,
and documents this fact.
simonpj@microsoft.com [Wed, 17 Nov 2010 10:08:39 +0000 (10:08 +0000)]
Comments only
simonpj@microsoft.com [Wed, 17 Nov 2010 10:08:32 +0000 (10:08 +0000)]
Fix Trac #4501: a transposition error in DynFlags
Push to STABLE
simonpj@microsoft.com [Tue, 16 Nov 2010 17:37:19 +0000 (17:37 +0000)]
Refactoring of the way that inlinings and rules are activated
Principally, the SimplifierMode now carries several (currently
four) flags in *all* phases, not just the "Gentle" phase.
This makes things simpler and more uniform.
As usual I did more refactoring than I had intended.
This stuff should go into 7.0.2 in due course, once
we've checked it solves the DPH performance problems.
simonpj@microsoft.com [Tue, 16 Nov 2010 17:35:00 +0000 (17:35 +0000)]
Some infrastruture for lambda-lifting
This stuff should have no effect but it sets things
up so that we can try floating out lambdas of n value
arguments.
The new (secret) flag is -ffloatt-lam-args=n.
This is *not* working yet, but it's got tangled up with
other stuff I want to commit, and it does no harm.
simonpj@microsoft.com [Tue, 16 Nov 2010 17:33:12 +0000 (17:33 +0000)]
Occurrence analyser takes account of the phase when handing RULES
See Note [Finding rule RHS free vars]
This should make Roman happy.
simonpj@microsoft.com [Tue, 16 Nov 2010 17:22:11 +0000 (17:22 +0000)]
Add -fwarn-lazy-unlifted-bindings to the list of flags
simonpj@microsoft.com [Tue, 16 Nov 2010 17:18:43 +0000 (17:18 +0000)]
Warn a bit less often about unlifted bindings.
Warn when
(a) a pattern bindings binds unlifted values
(b) it has no top-level bang
(c) the RHS has a *lifted* type
Clause (c) is new, argued for by Simon M
Eg x# = 4# + 4# -- No warning
(# a,b #) = blah -- No warning
I# x = blah -- Warning
simonpj@microsoft.com [Tue, 16 Nov 2010 17:16:10 +0000 (17:16 +0000)]
Libraries bytestirng, time, binary need -fno-warn-identities
They all have redundant uses of fromIntegral, but are no under
GHC HQ control.
simonpj@microsoft.com [Tue, 16 Nov 2010 17:15:27 +0000 (17:15 +0000)]
Improve documentation for -fwarn-incomplete-patterns
simonpj@microsoft.com [Tue, 16 Nov 2010 17:15:10 +0000 (17:15 +0000)]
Add warning for probable identities (fromIntegral and friends)
See Trac #4488. The basic idea is to check for
fun :: ty -> ty
where fun is one of
toIntegerName toRationalName
fromIntegralName realToFracName
There's a (documented) flag to control it -fwarn-identities.
Currently -Wall switches it on.
simonpj@microsoft.com [Tue, 16 Nov 2010 17:12:47 +0000 (17:12 +0000)]
Remove unncessary fromIntegral calls
simonpj@microsoft.com [Mon, 15 Nov 2010 23:21:42 +0000 (23:21 +0000)]
Fix -fwarn-missing-import-lists (fix Trac #4489)
simonpj@microsoft.com [Mon, 15 Nov 2010 23:11:46 +0000 (23:11 +0000)]
Deriving Typeable changes
* Fix a bug that led to a crash with
data family T a
deriving Functor T
* Allow deriving Typeable for data families
data family T a
deriving Typeable1 T
* Some refactoring and tidying
simonpj@microsoft.com [Mon, 15 Nov 2010 14:28:05 +0000 (14:28 +0000)]
Ensure that instance overlap errors are report properly
This (annoyingly) requires us to re-flatten the class predicate.
See Note [Flattening in error message generation]
simonpj@microsoft.com [Mon, 15 Nov 2010 12:15:40 +0000 (12:15 +0000)]
Ensure that unification variables alloc'd during solving are untouchable
This fixes Trac #4494. See Note [Extra TcsTv untouchables] in TcSimplify.
Ian Lynagh [Sun, 14 Nov 2010 20:55:27 +0000 (20:55 +0000)]
Fix paths used for doc publishing in the nightly builds
Ian Lynagh [Sun, 14 Nov 2010 17:33:32 +0000 (17:33 +0000)]
Remove -Ofile docs
They said:
(NOTE: not supported since GHC 4.x. Please ask if you're interested
in this.)
Ian Lynagh [Sun, 14 Nov 2010 15:50:23 +0000 (15:50 +0000)]
Update to docbook 4.5; fixes trac #4447
Ian Lynagh [Sun, 14 Nov 2010 14:03:11 +0000 (14:03 +0000)]
Add a build system dependency; fixes #4357
Ian Lynagh [Sun, 14 Nov 2010 13:46:36 +0000 (13:46 +0000)]
Build system tweak: Inline DQ now it's the same on all platforms
Ian Lynagh [Sat, 13 Nov 2010 12:53:14 +0000 (12:53 +0000)]
Fix up the ifdefs in Task.c
Edward Z. Yang [Thu, 11 Nov 2010 00:09:12 +0000 (00:09 +0000)]
Use standard task ID print style (hexadecimal).
simonpj@microsoft.com [Fri, 12 Nov 2010 23:07:01 +0000 (23:07 +0000)]
Remove use of (now-gone) VarPatOut
simonpj@microsoft.com [Fri, 5 Nov 2010 13:16:36 +0000 (13:16 +0000)]
Remove the now-unused constructor VarPatOut
simonpj@microsoft.com [Fri, 5 Nov 2010 13:15:45 +0000 (13:15 +0000)]
Track change in isInlinePragma
In TcBinds we want to use isAnyInlinePragma, to get
both INLINE and INLINABLE. I don't know why this isn't
leading to failures for others! The (bogus) error I got,
triggered by this bug was:
libraries\haskeline\System\Console\Haskeline\Key.hs:23:1:
You cannot SPECIALISE `M.findWithDefault'
because its definition has no INLINE/INLINABLE pragma
simonpj@microsoft.com [Fri, 12 Nov 2010 17:44:39 +0000 (17:44 +0000)]
More modules that need LANGUAGE BangPatterns
simonpj@microsoft.com [Fri, 12 Nov 2010 17:20:49 +0000 (17:20 +0000)]
Add LANGUAGE BangPatterns to modules that use them
simonpj@microsoft.com [Fri, 12 Nov 2010 16:08:01 +0000 (16:08 +0000)]
Warn about top-level bangs (Trac #4477)
A simple refactoring in the parser
Ben Lippmeier [Fri, 12 Nov 2010 13:46:41 +0000 (13:46 +0000)]
Slurp author spellings file from base and add more authors
simonpj@microsoft.com [Fri, 12 Nov 2010 13:00:11 +0000 (13:00 +0000)]
A (final) re-engineering of the new typechecker
Regression testing and user feedback for GHC 7.0 taught
us a lot. This patch fixes numerous small bugs, and some
major ones (eg Trac #4484, #4492), and improves type
error messages.
The main changes are:
* Entirely remove the "skolem equivalance class" stuff;
a very useful simplification
* Instead, when flattening "wanted" constraints we generate
unification variables (not flatten-skolems) for the
flattened type function application
* We then need a fixup pass at the end, TcSimplify.solveCTyFunEqs,
which resolves any residual equalities of form
F xi ~ alpha
* When we come across a definite failure (e.g. Int ~ [a]),
we now defer reporting the error until the end, in case we
learn more about 'a'. That is particularly important for
occurs-check errors. These are called "frozen" type errors.
* Other improvements in error message generation.
* Better tracing messages
simonpj@microsoft.com [Fri, 12 Nov 2010 08:30:52 +0000 (08:30 +0000)]
Allow the old [$foo| ... |] syntax for quasi-quotes
This is just a backward-compatibility thing, to be removed
eventually.
simonpj@microsoft.com [Thu, 11 Nov 2010 13:45:03 +0000 (13:45 +0000)]
Fix multi-line string (minor glitch in stage-1 compiler)
Roman Leshchinskiy [Wed, 10 Nov 2010 21:02:58 +0000 (21:02 +0000)]
Add upstream URLs for vector and primitive
Ian Lynagh [Wed, 10 Nov 2010 14:54:49 +0000 (14:54 +0000)]
Obey the -rtsopts flag when making shared libraries; part of #4464
Ian Lynagh [Wed, 3 Nov 2010 21:33:54 +0000 (21:33 +0000)]
Avoid scary message from tar if dph isn't in the tree
Ian Lynagh [Wed, 3 Nov 2010 21:33:18 +0000 (21:33 +0000)]
Whitespace only
Ian Lynagh [Wed, 3 Nov 2010 21:27:18 +0000 (21:27 +0000)]
Remove no-longer-necessary withFlattenedDynflags
Ian Lynagh [Wed, 3 Nov 2010 21:22:16 +0000 (21:22 +0000)]
Use liftIO rather than io
Ian Lynagh [Tue, 2 Nov 2010 19:24:46 +0000 (19:24 +0000)]
Fix a #if test
showMultiLineString is only in >= 7.1.