ghc.git
7 years agoMerge remote-tracking branch 'origin/master' into pretty-build
Iavor S. Diatchki [Fri, 27 Apr 2012 20:28:20 +0000 (13:28 -0700)] 
Merge remote-tracking branch 'origin/master' into pretty-build

7 years agoA build-system tweak for more readable build output.
Iavor S. Diatchki [Fri, 27 Apr 2012 20:24:05 +0000 (13:24 -0700)] 
A build-system tweak for more readable build output.

This change reduces the (default) verbosity of the build system.
This makes it easier to spot warnings in the output and, also, it
makes it easier to estimate how far along are we in the build process
by just glancing at the output.

To get the traditional fully verbose output, set V=1, like this:

    make V=1

7 years agoRevert "Add -faggressive-primops"
Simon Peyton Jones [Fri, 27 Apr 2012 17:07:57 +0000 (18:07 +0100)] 
Revert "Add -faggressive-primops"

This reverts commit 745ec959ff647c3a455767d20f6f37e9a0cc65aa.

Sigh. Seg fault

7 years agoRevert "Refactoring in CoreUtils/CoreArity"
Simon Peyton Jones [Fri, 27 Apr 2012 17:07:26 +0000 (18:07 +0100)] 
Revert "Refactoring in CoreUtils/CoreArity"

This reverts commit e3f8557c2aca04cf64eec6a1aacde6e01c0944ff.

Sigh. Seg fault.

7 years agoRevert "Make more primops cheaper"
Simon Peyton Jones [Fri, 27 Apr 2012 17:06:33 +0000 (18:06 +0100)] 
Revert "Make more primops cheaper"

This reverts commit a365a58eade7cb2c961af8e60c20b7d78b1b7484.

Sigh.  Seg fault.  Major sigh.

7 years agoMerge branch 'master' of http://darcs.haskell.org/ghc
Simon Peyton Jones [Fri, 27 Apr 2012 16:46:43 +0000 (17:46 +0100)] 
Merge branch 'master' of darcs.haskell.org/ghc

7 years agoMake more primops cheaper
Simon Peyton Jones [Fri, 27 Apr 2012 16:45:56 +0000 (17:45 +0100)] 
Make more primops cheaper

This puts back the earlier behaviour (pre "aggressive-primop" patch)
whereby most primpos were considered cheap.  In the aggressive-primop
patch we made them ones with bigger "code_size" seem not-cheap, but
this slows down fft2 a lot.  So I've reverted to the earlier behaviour.

   +++ b/compiler/prelude/PrimOp.lhs
   @@ -450,6 +450,8 @@ primOpIsCheap op
      -- This is vital; see Note [PrimOp can_fail and has_side_effects]
    && not (primOpOutOfLine op)
  -   -- && primOpCodeSize op <= primOpCodeSizeDefault
  +-- Omitting; it makes fft2 run a lot slower by preventing
  +--           eta expansion in an inner loop, with a primop cosDouble#

7 years agoComment out a pprTrace unless DEBUG is on (fix Trac #5929)
Simon Peyton Jones [Fri, 27 Apr 2012 16:42:22 +0000 (17:42 +0100)] 
Comment out a pprTrace unless DEBUG is on (fix Trac #5929)

7 years agoMerge branch 'master' of darcs.haskell.org:/home/darcs/ghc
Simon Peyton Jones [Fri, 27 Apr 2012 16:35:32 +0000 (17:35 +0100)] 
Merge branch 'master' of darcs.haskell.org:/home/darcs/ghc

7 years agoPretty printing and debug improvements
Simon Peyton Jones [Fri, 27 Apr 2012 15:50:09 +0000 (16:50 +0100)] 
Pretty printing and debug improvements

7 years agoMerge branch 'master' of http://darcs.haskell.org/ghc
Simon Peyton Jones [Fri, 27 Apr 2012 15:28:31 +0000 (16:28 +0100)] 
Merge branch 'master' of darcs.haskell.org/ghc

7 years agoRefactoring in CoreUtils/CoreArity
Simon Peyton Jones [Fri, 27 Apr 2012 15:28:02 +0000 (16:28 +0100)] 
Refactoring in CoreUtils/CoreArity

In the previous commit about "aggressive primops" I wanted a new
function CoreUtils.exprCertainlyTerminates.  In doing this I ended up
with a significant refactoring in CoreUtils.  The new structure has
quite a lot of nice sharing:

         exprIsCheap             = exprIsCheap' isHNFApp
         exprIsExpandable        = exprIsCheap' isConLikeApp

         exprIsHNF               = exprIsHNFlike isHNFApp
         exprIsConLike           = exprIsHNFlike isConLikeApp
         exprCertainlyTerminates = exprIsHNFlike isTerminatingApp

This patch also does some renaming

    CheapAppFun      -->   FunAppAnalyser
    isCheapApp       -->   isHNFApp
    isExpandableApp  -->   isConLikeApp

7 years agoAdd -faggressive-primops
Simon Peyton Jones [Fri, 27 Apr 2012 15:25:12 +0000 (16:25 +0100)] 
Add -faggressive-primops

I'm experimenting with making GHC a bit more aggressive about

  a) dropping case expressions if the result is unused
        Simplify.rebuildCase, CaseElim equation

  b) floating case expressions inwards
        FloatIn.fiExpr, AnnCase

In both cases the new behaviour is gotten with a static (debug)
flag -faggressive-primops.  The extra "aggression" is to allow
discarding and floating in for side-effecting operations.  See
the new, extensive Note [PrimOp can_fail and has_side_effects]
and Note [Aggressive PrimOps] in PrimoOp.

When discarding a case with unused binders, in the lifted-type
case it's definitely ok if the scrutinee terminates; previously
we were checking exprOkForSpeculation, which is significantly
worse.

There's a related change to CoreUtils/CoreArity, but I'll put that
in the next commit.

7 years agoDebug printing only
Simon Peyton Jones [Fri, 27 Apr 2012 15:20:38 +0000 (16:20 +0100)] 
Debug printing only

7 years agoSmall refactoring in kind generalisation of type declarations
Simon Peyton Jones [Fri, 27 Apr 2012 15:19:51 +0000 (16:19 +0100)] 
Small refactoring in kind generalisation of type declarations

7 years agoWhite space and debug printint
Simon Peyton Jones [Fri, 27 Apr 2012 15:19:23 +0000 (16:19 +0100)] 
White space and debug printint

7 years agoMerge branch 'master' of darcs.haskell.org:/srv/darcs//ghc
Ian Lynagh [Fri, 27 Apr 2012 14:14:47 +0000 (15:14 +0100)] 
Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc

7 years agohs_init(): cope with argc and/or argv being NULL (#6006)
Simon Marlow [Fri, 27 Apr 2012 12:20:56 +0000 (13:20 +0100)] 
hs_init(): cope with argc and/or argv being NULL (#6006)

7 years agoMerge branch 'master' of darcs.haskell.org:/srv/darcs//ghc
Ian Lynagh [Fri, 27 Apr 2012 12:11:50 +0000 (13:11 +0100)] 
Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc

7 years agoCatch illegal imports earlier (#6007)
Simon Marlow [Fri, 27 Apr 2012 12:07:50 +0000 (13:07 +0100)] 
Catch illegal imports earlier (#6007)

7 years agoAdd a new primop mkWeakNoFinalizer (#5879)
Simon Marlow [Fri, 27 Apr 2012 10:12:38 +0000 (11:12 +0100)] 
Add a new primop mkWeakNoFinalizer (#5879)

7 years agoFix build on OS X
Ian Lynagh [Fri, 27 Apr 2012 10:48:37 +0000 (11:48 +0100)] 
Fix build on OS X

7 years agoadd support for ARM hard-float ABI (fixes #5914)
Karel Gardas [Wed, 25 Apr 2012 07:04:50 +0000 (09:04 +0200)] 
add support for ARM hard-float ABI (fixes #5914)

This patch enhances Platform's ArchARM to include ARM ABI value. It also
tweaks configure machinery to detect hard-float ABI and to set it wherever
needed. Finally when hard-float ABI is in use, pass appropriate compiler
option to the LLVM's llc. Fixes #5914.

7 years agoDoc: updated list of warnings not enabled by -Wall (#4817)
Paolo Capriotti [Fri, 27 Apr 2012 08:46:06 +0000 (09:46 +0100)] 
Doc: updated list of warnings not enabled by -Wall (#4817)

7 years agoFlags documentation: -fwarn-unrecognized-pragmas is enabled by -Wall (#6050)
Paolo Capriotti [Fri, 27 Apr 2012 08:40:40 +0000 (09:40 +0100)] 
Flags documentation: -fwarn-unrecognized-pragmas is enabled by -Wall (#6050)

7 years agoMerge branch 'master' of win:c:/ghc/git/cygwin/.
Ian Lynagh [Fri, 27 Apr 2012 00:30:12 +0000 (01:30 +0100)] 
Merge branch 'master' of win:c:/ghc/git/cygwin/.

7 years agoWin32 build fix
Ian Lynagh [Fri, 27 Apr 2012 00:28:26 +0000 (01:28 +0100)] 
Win32 build fix

7 years agoFix build on Win32, and handle the FMT_* #defines in a slightly nicer way
Ian Lynagh [Fri, 27 Apr 2012 00:27:48 +0000 (01:27 +0100)] 
Fix build on Win32, and handle the FMT_* #defines in a slightly nicer way

7 years agoSimplify format specifiers
Ian Lynagh [Thu, 26 Apr 2012 23:25:17 +0000 (00:25 +0100)] 
Simplify format specifiers

It turns out that we can use %zu and %llu on Win32, provided we
include PosixSource everywhere we want to use them.

7 years agoWin32 build fix
Ian Lynagh [Thu, 26 Apr 2012 22:04:05 +0000 (23:04 +0100)] 
Win32 build fix

7 years agoDocument the -fwarn-unsupported-calling-conventions flag
Ian Lynagh [Thu, 26 Apr 2012 20:49:46 +0000 (21:49 +0100)] 
Document the -fwarn-unsupported-calling-conventions flag

7 years agoOS X build fixes
Ian Lynagh [Thu, 26 Apr 2012 19:53:18 +0000 (20:53 +0100)] 
OS X build fixes

OS X doesn't understand 'gnu_printf', so we need to onyl use it
conditionally.

7 years agoFix build on OSX: Use the 'z' format specifier modifier when possible
Ian Lynagh [Thu, 26 Apr 2012 19:46:00 +0000 (20:46 +0100)] 
Fix build on OSX: Use the 'z' format specifier modifier when possible

On Win32 it's not recognised, so we unfortunately can't use it
unconditionally.

7 years agoBuild fixes
Ian Lynagh [Thu, 26 Apr 2012 19:24:06 +0000 (20:24 +0100)] 
Build fixes

7 years agoMerge branch 'master' of darcs.haskell.org:/srv/darcs//ghc
Ian Lynagh [Thu, 26 Apr 2012 18:45:11 +0000 (19:45 +0100)] 
Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc

7 years agoMerge win:c:/m64/reg8
Ian Lynagh [Thu, 26 Apr 2012 18:40:52 +0000 (19:40 +0100)] 
Merge win:c:/m64/reg8

7 years agoAdd SRC_[CH]C_WARNING_OPTS
Ian Lynagh [Thu, 26 Apr 2012 18:28:39 +0000 (19:28 +0100)] 
Add SRC_[CH]C_WARNING_OPTS

This allows you to say things like
    SRC_HC_WARNING_OPTS += -fno-warn-unsupported-calling-conventions
in mk/validate.mk.

Unfortunately, we can't just use SRC_HC_OPTS, as that gets put before
the more specific options (e.g. ghc-options in a .cabal file), many of
which include -Wall. So now we have:
    ghc $(SRC_HC_OPTS) ... options from .cabal etc ... $(SRC_HC_WARNING_OPTS)

7 years agoWin64 build fix
Ian Lynagh [Thu, 26 Apr 2012 17:39:15 +0000 (18:39 +0100)] 
Win64 build fix

7 years agoUse coreBindsStats more than coreBindsSize
Simon Peyton Jones [Thu, 26 Apr 2012 17:06:36 +0000 (18:06 +0100)] 
Use coreBindsStats more than coreBindsSize

7 years agoTiny refactor
Simon Peyton Jones [Thu, 26 Apr 2012 17:05:54 +0000 (18:05 +0100)] 
Tiny refactor

7 years agoFix lookup of fixity signatures for type operators (#6027)
Paolo Capriotti [Wed, 25 Apr 2012 13:10:40 +0000 (14:10 +0100)] 
Fix lookup of fixity signatures for type operators (#6027)

Extend name lookup for fixity declaration to the TcClsName namespace for
all reader names, instead of only those in DataName.

7 years agoFix warnings on Win64
Ian Lynagh [Thu, 26 Apr 2012 15:52:44 +0000 (16:52 +0100)] 
Fix warnings on Win64

Mostly this meant getting pointer<->int conversions to use the right
sizes. lnat is now size_t, rather than unsigned long, as that seems a
better match for how it's used.

7 years agoMake the RHS of a generic FamInst use the same type variables as the LHS!
Simon Peyton Jones [Thu, 26 Apr 2012 13:39:59 +0000 (14:39 +0100)] 
Make the RHS of a generic FamInst use the same type variables as the LHS!

7 years agoMerge branch 'master' of http://darcs.haskell.org/ghc
Simon Peyton Jones [Thu, 26 Apr 2012 12:51:26 +0000 (13:51 +0100)] 
Merge branch 'master' of darcs.haskell.org/ghc

7 years agoDo not generate derived instances in TH brackets
Simon Peyton Jones [Thu, 26 Apr 2012 12:47:54 +0000 (13:47 +0100)] 
Do not generate derived instances in TH brackets

See Note [Deriving inside TH brackets] in TcInstDcls
Fixes Trac #6005 (again)

7 years agoRemove spurious debug print
Simon Peyton Jones [Thu, 26 Apr 2012 12:47:20 +0000 (13:47 +0100)] 
Remove spurious debug print

7 years agoAllow case expressions with a single alternative to be floated in.
Geoffrey Mainland [Thu, 26 Apr 2012 12:00:07 +0000 (13:00 +0100)] 
Allow case expressions with a single alternative to be floated in.

This change generalizes support for floating in case expressions. Previously,
case expression with an unlifted scrutinee and a single DEFAULT alternative were
floated in. In particular, this allowed array index operations to be floated
in. We also want to float in SIMD unpack primops, which return an unboxed tuple
of scalars, thus the generalization.

7 years agoImprove debug print a bit
Simon Peyton Jones [Thu, 26 Apr 2012 08:29:29 +0000 (09:29 +0100)] 
Improve debug print a bit

7 years agoFix a one-character typo (kv1 should be kv2!)
Simon Peyton Jones [Thu, 26 Apr 2012 08:29:15 +0000 (09:29 +0100)] 
Fix a one-character typo (kv1 should be kv2!)

Fixes Trac #6020, #6044

7 years agoMerge branch 'master' of http://darcs.haskell.org/ghc
Simon Peyton Jones [Wed, 25 Apr 2012 14:34:01 +0000 (15:34 +0100)] 
Merge branch 'master' of darcs.haskell.org/ghc

7 years agoFix typo
Simon Peyton Jones [Wed, 25 Apr 2012 14:28:28 +0000 (15:28 +0100)] 
Fix typo

7 years agomake -XNoImplicitPrelude work properly in GHCi
Simon Marlow [Wed, 25 Apr 2012 13:04:10 +0000 (14:04 +0100)] 
make -XNoImplicitPrelude work properly in GHCi

7 years agodistclean was removing ghc-pwd/dist, should be ghc-pwd/dist-boot
Simon Marlow [Mon, 16 Apr 2012 13:54:45 +0000 (14:54 +0100)] 
distclean was removing ghc-pwd/dist, should be ghc-pwd/dist-boot

This has been causing bloat in the src dist for ages.

Noticed while looking at #6009, but I don't think this is the bug
(./configure always removes ghc-pwd/dist-boot before building ghc-pwd)

7 years agoMore fixes to kind polymorphism, fixes Trac #6035, #6036
Simon Peyton Jones [Wed, 25 Apr 2012 11:56:44 +0000 (12:56 +0100)] 
More fixes to kind polymorphism, fixes Trac #6035, #6036

* Significant refactoring in tcFamPats and tcConDecl

* It seems that we have to allow KindVars (not just
  TcKindVars during kind unification.  See
  Note [Unifying kind variables] in TcUnify.

* Be consistent about zonkQuantifiedTyVars

* Split the TcType->TcType zonker (in TcMType)
   from the TcType->Type   zonker (in TcHsSyn)
  The clever parameterisation was doing my head in,
  and it's only a small function

* Remove some dead code (tcTyVarBndrsGen)

7 years agoFix looking up of Exact RdrNames, fixes Trac #6005
Simon Peyton Jones [Wed, 25 Apr 2012 11:55:41 +0000 (12:55 +0100)] 
Fix looking up of Exact RdrNames, fixes Trac #6005

See Note [Splicing Exact names] in RnEnv.

7 years agoMerge branch 'master' of http://darcs.haskell.org/ghc
Simon Peyton Jones [Wed, 25 Apr 2012 11:48:46 +0000 (12:48 +0100)] 
Merge branch 'master' of darcs.haskell.org/ghc

7 years agoremoved superfluous flag for vectScalarFun
Gabriele Keller [Wed, 25 Apr 2012 04:37:26 +0000 (14:37 +1000)] 
removed superfluous flag for vectScalarFun

7 years agoMerge branch 'master' of http://darcs.haskell.org//ghc
Simon Peyton Jones [Wed, 25 Apr 2012 08:51:54 +0000 (09:51 +0100)] 
Merge branch 'master' of darcs.haskell.org//ghc

7 years agoImprove pretty-printing
Simon Peyton Jones [Wed, 25 Apr 2012 08:51:02 +0000 (09:51 +0100)] 
Improve pretty-printing

7 years agoBetter error messages during sort checking of kind signatures
Simon Peyton Jones [Wed, 25 Apr 2012 08:37:53 +0000 (09:37 +0100)] 
Better error messages during sort checking of kind signatures

Fixes Trac #6039, where we have a bogus kind signature
   data T (a :: j k) = MkT

7 years agoWibble to comment (to keep Haddock happy)
Simon Peyton Jones [Wed, 25 Apr 2012 08:36:46 +0000 (09:36 +0100)] 
Wibble to comment (to keep Haddock happy)

7 years agoMerge remote-tracking branch 'origin/master'
Simon Peyton Jones [Wed, 25 Apr 2012 07:25:27 +0000 (08:25 +0100)] 
Merge remote-tracking branch 'origin/master'

7 years agoReport deprecations at occurrence sites, not once per module
Simon Peyton Jones [Wed, 25 Apr 2012 07:21:13 +0000 (08:21 +0100)] 
Report deprecations at occurrence sites, not once per module

Fixes Trac #5867, and is generally nicer

7 years agoAdd experimental GHCi monad.
David Terei [Tue, 24 Apr 2012 23:08:44 +0000 (16:08 -0700)] 
Add experimental GHCi monad.

Modification of previous commit:
e0e99f9948c1eac82cf69dd3cc30cb068e42d45e

Allows setting which monad GHCi runs statements in. Unsupported at this
stage.

7 years agoAdd a flag for the unsupported calling convention warning
Ian Lynagh [Tue, 24 Apr 2012 22:12:25 +0000 (23:12 +0100)] 
Add a flag for the unsupported calling convention warning

7 years agoWin64 warning fix
Ian Lynagh [Tue, 24 Apr 2012 22:10:24 +0000 (23:10 +0100)] 
Win64 warning fix

7 years agoIt isn't guaranteed that Cabal is warning-free
Ian Lynagh [Tue, 24 Apr 2012 19:09:17 +0000 (20:09 +0100)] 
It isn't guaranteed that Cabal is warning-free

7 years agoMerge branch 'master' of darcs.haskell.org:/srv/darcs//ghc
Ian Lynagh [Tue, 24 Apr 2012 18:14:15 +0000 (19:14 +0100)] 
Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc

7 years agoA couple of build fixes for Win64
Ian Lynagh [Tue, 24 Apr 2012 16:19:58 +0000 (17:19 +0100)] 
A couple of build fixes for Win64

7 years agoMake the prototype for postHeapEvent match the definition
Ian Lynagh [Tue, 24 Apr 2012 15:45:33 +0000 (16:45 +0100)] 
Make the prototype for postHeapEvent match the definition

I've assumed that the definition type is right.

7 years agoUse gnu_printf rather than just printf in function format attributes
Ian Lynagh [Tue, 24 Apr 2012 15:39:55 +0000 (16:39 +0100)] 
Use gnu_printf rather than just printf in function format attributes

On Windows, gcc thinks that printf means ms_printf, which is not the
case when we #define _POSIX_SOURCE 1.

7 years agoReplaced tabs
Gabriele Keller [Tue, 24 Apr 2012 14:11:25 +0000 (00:11 +1000)] 
Replaced tabs

7 years agoVectorisation Avoidance
Gabriele Keller [Tue, 24 Apr 2012 02:15:31 +0000 (12:15 +1000)] 
Vectorisation Avoidance

Switched off by default. Use -favoid-vect to activate

7 years agoPartial Vectoriasation
Gabriele Keller [Thu, 16 Feb 2012 10:14:06 +0000 (21:14 +1100)] 
Partial Vectoriasation

7 years agoFixed typo (wrong max constant) in Initiialise.hs
Gabriele Keller [Thu, 16 Feb 2012 10:01:19 +0000 (21:01 +1100)] 
Fixed typo (wrong max constant) in Initiialise.hs

7 years agoAdd symbol declaration for __fixunsdfdi in the linker.
Paolo Capriotti [Tue, 24 Apr 2012 09:13:09 +0000 (10:13 +0100)] 
Add symbol declaration for __fixunsdfdi in the linker.

7 years agoMerge branch 'master' of http://darcs.haskell.org/ghc
Simon Peyton Jones [Tue, 24 Apr 2012 07:06:08 +0000 (08:06 +0100)] 
Merge branch 'master' of darcs.haskell.org/ghc

7 years agoMerge nb:ghc/git/ghc
Ian Lynagh [Mon, 23 Apr 2012 15:11:46 +0000 (16:11 +0100)] 
Merge nb:ghc/git/ghc

7 years agoMerge branch 'master' of darcs.haskell.org:/srv/darcs//ghc
Ian Lynagh [Mon, 23 Apr 2012 15:05:02 +0000 (16:05 +0100)] 
Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc

7 years agoghci: write exceptions to stderr (#5980)
Paolo Capriotti [Thu, 19 Apr 2012 12:28:47 +0000 (13:28 +0100)] 
ghci: write exceptions to stderr (#5980)

7 years agoSort instances by location before printing them
Simon Peyton Jones [Mon, 23 Apr 2012 13:35:16 +0000 (14:35 +0100)] 
Sort instances by location before printing them

Reduces wobble in error messages, and is better for the programmer

7 years agoTiny refactoring; no change in behaviour
Simon Peyton Jones [Sun, 22 Apr 2012 17:32:50 +0000 (18:32 +0100)] 
Tiny refactoring; no change in behaviour

7 years agoRespect kind-variable scoping when instantiating dfuns
Simon Peyton Jones [Sun, 22 Apr 2012 16:52:55 +0000 (17:52 +0100)] 
Respect kind-variable scoping when instantiating dfuns

Fixes Trac #6020

7 years agoEmpty data types should not be "trimmed" by TidyPgm
Simon Peyton Jones [Sun, 22 Apr 2012 15:24:07 +0000 (16:24 +0100)] 
Empty data types should not be "trimmed" by TidyPgm

That in turn means that you can derive Show etc in other modules,
fixing Trac #6031

7 years agoAdd an X86/amd64 implementation for quotRemWord2
Ian Lynagh [Sat, 21 Apr 2012 14:28:27 +0000 (15:28 +0100)] 
Add an X86/amd64 implementation for quotRemWord2

7 years agoAdd a quotRemWord2 primop
Ian Lynagh [Sat, 21 Apr 2012 14:03:23 +0000 (15:03 +0100)] 
Add a quotRemWord2 primop

It allows you to do
    (high, low) `quotRem` d
provided high < d.

Currently only has an inefficient fallback implementation.

7 years agoOS X: disable bootstrapping info for 'ar'
Manuel M T Chakravarty [Sat, 21 Apr 2012 07:43:34 +0000 (17:43 +1000)] 
OS X: disable bootstrapping info for 'ar'

Xcode 4.3 installs the command line tools in a different location as earlier versions of Xcode. With the bootstrapping info, the build fails if the bootstrap compiler was built with an older version of Xcode.

7 years agoAdd a couple of comments
Ian Lynagh [Fri, 20 Apr 2012 17:54:25 +0000 (18:54 +0100)] 
Add a couple of comments

7 years agoMerge branch 'master' of http://darcs.haskell.org/ghc
Simon Peyton Jones [Fri, 20 Apr 2012 17:38:59 +0000 (18:38 +0100)] 
Merge branch 'master' of darcs.haskell.org/ghc

7 years agoMove free-var info from InstDecl to FamInstDecl
Simon Peyton Jones [Fri, 20 Apr 2012 17:38:25 +0000 (18:38 +0100)] 
Move free-var info from InstDecl to FamInstDecl

7 years agoMerge branch 'master' of http://darcs.haskell.org/ghc
Simon Peyton Jones [Fri, 20 Apr 2012 16:43:37 +0000 (17:43 +0100)] 
Merge branch 'master' of darcs.haskell.org/ghc

7 years agoMerge branch 'master' of http://darcs.haskell.org/ghc
Simon Peyton Jones [Fri, 20 Apr 2012 16:07:59 +0000 (17:07 +0100)] 
Merge branch 'master' of darcs.haskell.org/ghc

7 years agoComments only
Simon Peyton Jones [Fri, 20 Apr 2012 16:06:57 +0000 (17:06 +0100)] 
Comments only

7 years agoMerge branch 'master' of http://darcs.haskell.org//ghc
Simon Peyton Jones [Fri, 20 Apr 2012 16:06:40 +0000 (17:06 +0100)] 
Merge branch 'master' of darcs.haskell.org//ghc

7 years agoDo SCC on instance declarations (fixes Trac #5715)
Simon Peyton Jones [Fri, 20 Apr 2012 16:05:15 +0000 (17:05 +0100)] 
Do SCC on instance declarations (fixes Trac #5715)

The trouble here is that given

    {-# LANGUAGE DataKinds, TypeFamilies #-}
    data instance Foo a = Bar (Bar a)

we want to get a sensible message that we can't use the promoted 'Bar'
constructor until after its definition; it's a staging error.  Bud the
staging mechanism that we use for vanilla data declarations don't work
here.

Solution is to perform strongly-connected component analysis on the
instance declarations. But that in turn means that we need to track
free-variable information on more HsSyn declarations, which is why
so many files are touched.  All the changes are boiler-platey except
the ones in TcInstDcls.

7 years agoAdding -ddump-avoid-vect option for vectorisation avoidance diagnostics
Manuel M T Chakravarty [Fri, 20 Apr 2012 06:03:17 +0000 (16:03 +1000)] 
Adding -ddump-avoid-vect option for vectorisation avoidance diagnostics

7 years agoAdd newline to the end of file
Jose Pedro Magalhaes [Thu, 19 Apr 2012 15:13:20 +0000 (17:13 +0200)] 
Add newline to the end of file

7 years agoFix operand expansion function.
Paolo Capriotti [Mon, 16 Apr 2012 18:46:26 +0000 (19:46 +0100)] 
Fix operand expansion function.

7 years agoSimplify the typechecking of RULES
Simon Peyton Jones [Mon, 16 Apr 2012 14:30:20 +0000 (15:30 +0100)] 
Simplify the typechecking of RULES

Not only does this fix Trac #5853, but it also eliminate
the horrid SimplEqsOnly part of the constraint simplifier.

The new plan is described in TcRules
 Note [Simplifying RULE constraints]

7 years agoSimplify construction of equality predicates
Simon Peyton Jones [Mon, 16 Apr 2012 14:27:22 +0000 (15:27 +0100)] 
Simplify construction of equality predicates

There was an ASSERT which does not hold during type checking (and
should not) which is later checked by Core Lint