ghc.git
5 years agoDon't use showPass in the backend (#8973)
Simon Marlow [Sun, 8 Jun 2014 10:17:57 +0000 (11:17 +0100)] 
Don't use showPass in the backend (#8973)

5 years agoRemove unused --run-cps/--run-cpsz options
Simon Marlow [Sun, 8 Jun 2014 09:24:25 +0000 (10:24 +0100)] 
Remove unused --run-cps/--run-cpsz options

5 years agoRaise exceptions when blocked in bad FDs (fixes Trac #4934)
Sergei Trofimovich [Fri, 23 May 2014 20:58:06 +0000 (23:58 +0300)] 
Raise exceptions when blocked in bad FDs (fixes Trac #4934)

Before the patch any call to 'select()' with 'bad_fd' led to:
- unblocking of all threads
- hiding exception for 'threadWaitRead bad_fd'

The patch fixes both cases in this way:
after 'select()' failure we iterate over each blocked descriptor
and poll individually to see it's actual status, which is:
- READY (move to run queue)
- BLOCKED (leave in blocked queue)
- INVALID (send an IOErrror exception)

Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
5 years agoFix obscure problem with using the system linker (#8935)
Simon Marlow [Sun, 8 Jun 2014 08:46:20 +0000 (09:46 +0100)] 
Fix obscure problem with using the system linker (#8935)

See Note [RTLD_LOCAL] for a summary of the problem and solution, and

5 years agoPretty-print built in synonym families in interfaces
Joachim Breitner [Sat, 7 Jun 2014 11:18:55 +0000 (13:18 +0200)] 
Pretty-print built in synonym families in interfaces

This closes #9181.

5 years agoTest case for #9181 (:browse GHC.TypeLits panic)
Joachim Breitner [Sat, 7 Jun 2014 08:09:40 +0000 (10:09 +0200)] 
Test case for #9181 (:browse GHC.TypeLits panic)

5 years agos/-hi-diffs/-ddump-hi-diffs/ in docs (#9179)
Joachim Breitner [Sat, 7 Jun 2014 07:57:32 +0000 (09:57 +0200)] 
s/-hi-diffs/-ddump-hi-diffs/ in docs (#9179)

5 years agosupress warning of bang wildcard pattern-binding (i.e. let !_ = rhs). This fixes...
Guido Zayas [Fri, 6 Jun 2014 16:34:14 +0000 (18:34 +0200)] 
supress warning of bang wildcard pattern-binding (i.e. let !_ = rhs). This fixes #9127

5 years agoFix discarding of unreachable code in the register allocator (#9155)
Simon Marlow [Fri, 6 Jun 2014 08:52:13 +0000 (09:52 +0100)] 
Fix discarding of unreachable code in the register allocator (#9155)

A previous fix to this was wrong: f5879acd018494b84233f26fba828ce376d0f81d
and left some unreachable code behind.  So rather than try to be clever and
do this at the same time as the strongly-connected-component analysis, I'm
doing a separate reachability pass first.

5 years agoTest case: GHCi uses UnicodeSyntax if the loaded file uses it.
Joachim Breitner [Fri, 6 Jun 2014 16:42:34 +0000 (18:42 +0200)] 
Test case: GHCi uses UnicodeSyntax if the loaded file uses it.

Its marked as broken, as this does not work yet, but we are calling it a
day here soon, so I want this to be recorded (#8959).

5 years agoOnly use UnicodeSytanx pretty printing if the locale supports it
Joachim Breitner [Fri, 6 Jun 2014 16:07:29 +0000 (18:07 +0200)] 
Only use UnicodeSytanx pretty printing if the locale supports it

using the same check as for unicode quotes.

5 years agoUse UnicodeSyntax when printing
Joachim Breitner [Fri, 6 Jun 2014 13:00:52 +0000 (15:00 +0200)] 
Use UnicodeSyntax when printing

When printing Haskell source, and UnicodeSyntax is enabled, use the
unicode sytax characters (#8959).

5 years agoUpdate mod73 test output
Joachim Breitner [Fri, 6 Jun 2014 13:03:36 +0000 (15:03 +0200)] 
Update mod73 test output

to what I observe on travis and on my validate machine, even though my
local tree produces the previous output.

5 years agoAdded testcase for #9069
Sjoerd Visscher [Fri, 6 Jun 2014 13:26:20 +0000 (15:26 +0200)] 
Added testcase for #9069

5 years agoMake DeriveTraversable imply DeriveFunctor/Foldable
Sjoerd Visscher [Fri, 6 Jun 2014 13:24:41 +0000 (15:24 +0200)] 
Make DeriveTraversable imply DeriveFunctor/Foldable

Implements #9069

5 years agoMerge branch 'master' of git://git.haskell.org/ghc
Sjoerd Visscher [Fri, 6 Jun 2014 12:31:51 +0000 (14:31 +0200)] 
Merge branch 'master' of git://git.haskell.org/ghc

Conflicts:
docs/users_guide/flags.xml

5 years agoAdded more option implication documentation.
Sjoerd Visscher [Fri, 6 Jun 2014 12:23:59 +0000 (14:23 +0200)] 
Added more option implication documentation.

5 years agoMake the matcher and wrapper Ids in PatSyn into LocalIds, not GlobalIds
Simon Peyton Jones [Fri, 6 Jun 2014 10:39:41 +0000 (11:39 +0100)] 
Make the matcher and wrapper Ids in PatSyn into LocalIds, not GlobalIds

This was a serious bug, exposed by Trac #9175.  The matcher and wrapper
must be LocalIds, like record selectors and dictionary functions, for
the reasons now documented in Note [Exported LocalIds] in Id.lhs

In fixing this I found
 - PatSyn should have an Id inside it (apart from the wrapper and matcher)
   It should be a Name.  Hence psId --> psName, with knock-on consequences

 - Tidying of PatSyns in TidyPgm was wrong

 - The keep-alive set in Desugar.deSugar (now) doesn't need pattern synonyms
   in it

I also cleaned up the interface to PatSyn a little, so there's a tiny knock-on
effect in Haddock; hence the haddock submodule update.

It's very hard to make a test for this bug, so I haven't.

5 years agoPrevent line wrapping after the dash of an option.
Sjoerd Visscher [Fri, 6 Jun 2014 11:51:40 +0000 (13:51 +0200)] 
Prevent line wrapping after the dash of an option.

5 years agoSorted the language options list alphabetically, and added missing options.
Sjoerd Visscher [Fri, 6 Jun 2014 11:27:11 +0000 (13:27 +0200)] 
Sorted the language options list alphabetically, and added missing options.

5 years agoAdded link ends to role documentation.
Sjoerd Visscher [Fri, 6 Jun 2014 11:25:43 +0000 (13:25 +0200)] 
Added link ends to role documentation.

5 years agoUpdate test results (last minuite changes)
Joachim Breitner [Fri, 6 Jun 2014 11:19:33 +0000 (13:19 +0200)] 
Update test results (last minuite changes)

5 years agoAdd testcase for #9177 and adjust test output
Joachim Breitner [Fri, 6 Jun 2014 10:28:55 +0000 (12:28 +0200)] 
Add testcase for #9177 and adjust test output

5 years agoReport all possible results from related name spaces
Joachim Breitner [Fri, 6 Jun 2014 10:11:48 +0000 (12:11 +0200)] 
Report all possible results from related name spaces

instead of just one matching directly. This is an alternative way to fix
ticket #9177.

5 years agoSuggest Int when user writes int
Joachim Breitner [Fri, 6 Jun 2014 09:47:28 +0000 (11:47 +0200)] 
Suggest Int when user writes int

and the other way around. This fixes #9177.

5 years agoTypo
Mateusz Kowalczyk [Thu, 5 Jun 2014 23:26:34 +0000 (01:26 +0200)] 
Typo

5 years agoFix compilation of cmm files with -outputdir (Trac #9050)
Yuras Shumovich [Thu, 1 May 2014 21:11:58 +0000 (00:11 +0300)] 
Fix compilation of cmm files with -outputdir (Trac #9050)

5 years agoTweak comments
Gabor Greif [Thu, 5 Jun 2014 20:03:31 +0000 (22:03 +0200)] 
Tweak comments

5 years agoTypo
Gabor Greif [Fri, 23 May 2014 22:56:15 +0000 (00:56 +0200)] 
Typo

5 years agoFix .arcconfig
Austin Seipp [Thu, 5 Jun 2014 14:13:30 +0000 (09:13 -0500)] 
Fix .arcconfig

See, what did I tell you? Broken!

Signed-off-by: Austin Seipp <austin@well-typed.com>
5 years agoEmit error in case of duplicate GRE; fixes #7241
Yuras Shumovich [Thu, 5 Jun 2014 12:56:05 +0000 (07:56 -0500)] 
Emit error in case of duplicate GRE; fixes #7241

Signed-off-by: Austin Seipp <austin@well-typed.com>
5 years agoAdd ".text.unlikely" to recognized code sections on Windows.
Niklas Larsson [Sun, 25 May 2014 09:54:13 +0000 (11:54 +0200)] 
Add ".text.unlikely" to recognized code sections on Windows.

Fixes #9080

Signed-off-by: Austin Seipp <austin@well-typed.com>
5 years agoAdd .arcconfig file. Do not use yet.
Austin Seipp [Thu, 5 Jun 2014 12:31:39 +0000 (07:31 -0500)] 
Add .arcconfig file. Do not use yet.

Don't use this yet - it's an experiment, a disaster, whatever. Caveat
emptor. I'll probably delete everything. Do not taunt Happy Fun Ball -
you have been warned.

Signed-off-by: Austin Seipp <austin@well-typed.com>
5 years agoTest Trac #9023
Simon Peyton Jones [Thu, 5 Jun 2014 11:26:24 +0000 (12:26 +0100)] 
Test Trac #9023

5 years agoFix egregious instantiation bug in matchOneConLike (fixing Trac #9023)
Simon Peyton Jones [Thu, 5 Jun 2014 10:03:45 +0000 (11:03 +0100)] 
Fix egregious instantiation bug in matchOneConLike (fixing Trac #9023)

We simply weren't giving anything like the right instantiating types
to patSynInstArgTys in matchOneConLike.

To get these instantiating types would have involved matching the
result type of the pattern synonym with the pattern type, which is
tiresome.  So instead I changed ConPatOut so that instead of recording
the type of the *whole* pattern (in old field pat_ty), it not records
the *instantiating* types (in new field pat_arg_tys).  Then we canuse
TcHsSyn.conLikeResTy to get the pattern type when needed.

There are lots of knock-on incidental effects, but they mostly made
the code simpler, so I'm happy.

5 years agoSubsume NullaryTypeClasses by MultiParamTypeClasses (#8993)
Owen Stephens [Thu, 10 Apr 2014 16:44:11 +0000 (17:44 +0100)] 
Subsume NullaryTypeClasses by MultiParamTypeClasses (#8993)

MPTC now also handles the nullary case

5 years agoExport `TimerManager` from GHC.Event (re #9165)
Herbert Valerio Riedel [Wed, 4 Jun 2014 07:45:27 +0000 (09:45 +0200)] 
Export `TimerManager` from GHC.Event (re #9165)

This just addresses the specific issue raised in #9165. However, I've noticed
the Haddock comments need to be improved, which will be addressed by a separate
commit.

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
5 years agoSet/update upstream repo url for haddock
Herbert Valerio Riedel [Wed, 4 Jun 2014 07:35:52 +0000 (09:35 +0200)] 
Set/update upstream repo url for haddock

In the future, some script will use the last column to configure
Git to redirect `push` operations to the respective primary Git
repo.

One way could be via the `pushInsteadOf` facility described in

  https://ghc.haskell.org/trac/ghc/wiki/WorkingConventions/Git/Submodules

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
5 years agoComments only (related to Trac #7730)
Simon Peyton Jones [Tue, 3 Jun 2014 16:26:21 +0000 (17:26 +0100)] 
Comments only (related to Trac #7730)

5 years agoAdd :kind test in T7730
Simon Peyton Jones [Tue, 3 Jun 2014 16:15:21 +0000 (17:15 +0100)] 
Add :kind test in T7730

5 years agoUse IfLclName instead of OccName in IfaceEqSpec
Simon Peyton Jones [Tue, 3 Jun 2014 13:23:48 +0000 (14:23 +0100)] 
Use IfLclName instead of OccName in IfaceEqSpec

The type variables in the IfaceEqSpec of a data constructor are really
ordinarly *occurrences*, so they should be IfLclNames just like any
other type variable occurence.

5 years agoDo pretty-printing of TyThings via IfaceDecl (Trac #7730)
Simon Peyton Jones [Tue, 3 Jun 2014 13:15:52 +0000 (14:15 +0100)] 
Do pretty-printing of TyThings via IfaceDecl (Trac #7730)

All the initial work on this was done fy 'archblob' (fcsernik@gmail.com);
thank you!

I reviewed the patch, started some tidying, up and then ended up in a huge
swamp of changes, not all of which I can remember now.  But:

* To suppress kind arguments when we have -fno-print-explicit-kinds,
    - IfaceTyConApp argument types are in a tagged list IfaceTcArgs

* To allow overloaded types to be printed with =>, add IfaceDFunTy to IfaceType.

* When printing data/type family instances for the user, I've made them
  print out an informative RHS, which is a new feature. Thus
        ghci> info T
        data family T a
        data instance T Int = T1 Int Int
        data instance T Bool = T2

* In implementation terms, pprIfaceDecl has just one "context" argument,
  of type IfaceSyn.ShowSub, which says
       - How to print the binders of the decl
         see note [Printing IfaceDecl binders] in IfaceSyn
       - Which sub-comoponents (eg constructors) to print

* Moved FastStringEnv from RnEnv to OccName

It all took a ridiculously long time to do.  But it's done!

5 years agoFix inverted gadt-syntax flag for data families
Simon Peyton Jones [Tue, 3 Jun 2014 12:59:01 +0000 (13:59 +0100)] 
Fix inverted gadt-syntax flag for data families

5 years agoUse mkTcEqPred rather than mkEqPred
Simon Peyton Jones [Tue, 3 Jun 2014 12:58:27 +0000 (13:58 +0100)] 
Use mkTcEqPred rather than mkEqPred

This was mostly done in an earlier commit, but I missed these two

5 years agoRename TypeRep.Prec to TypeRep.TyPrec
Simon Peyton Jones [Tue, 3 Jun 2014 12:57:42 +0000 (13:57 +0100)] 
Rename TypeRep.Prec to TypeRep.TyPrec

5 years agofix missing space
Ryan Mulligan [Tue, 3 Jun 2014 04:20:01 +0000 (21:20 -0700)] 
fix missing space

5 years agoImprove Note [Order of Coercible Instances] about Trac #9117
Simon Peyton Jones [Fri, 30 May 2014 09:25:21 +0000 (10:25 +0100)] 
Improve Note [Order of Coercible Instances] about Trac #9117

5 years agoFix missing unlockClosure() call in tryReadMVar (#9148)
Simon Marlow [Fri, 30 May 2014 07:47:26 +0000 (08:47 +0100)] 
Fix missing unlockClosure() call in tryReadMVar (#9148)

5 years agoJust formatting
Simon Marlow [Fri, 16 May 2014 09:19:45 +0000 (10:19 +0100)] 
Just formatting

5 years agoRemove deprecated -optdep options
Simon Marlow [Fri, 16 May 2014 09:19:19 +0000 (10:19 +0100)] 
Remove deprecated -optdep options

5 years agomkHiPath & mkObjPath didn't need to be in IO
Simon Marlow [Fri, 16 May 2014 09:18:03 +0000 (10:18 +0100)] 
mkHiPath & mkObjPath didn't need to be in IO

5 years agoDisable FixEither tests in TcCoercible
Joachim Breitner [Fri, 30 May 2014 08:04:10 +0000 (10:04 +0200)] 
Disable FixEither tests in TcCoercible

This fixes #9153. It has not been noticed before because this
TcCoercible does not run with "make fast=YES"

5 years agoPer-capability nursery weak pointer lists, fixes #9075
Edward Z. Yang [Fri, 30 May 2014 03:05:51 +0000 (20:05 -0700)] 
Per-capability nursery weak pointer lists, fixes #9075

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
5 years agoRemove obsolete -fno-warn-amp from spec001
Edward Z. Yang [Fri, 30 May 2014 00:36:48 +0000 (17:36 -0700)] 
Remove obsolete -fno-warn-amp from spec001

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
5 years agoRefresh recomp006 error message.
Edward Z. Yang [Fri, 30 May 2014 00:35:53 +0000 (17:35 -0700)] 
Refresh recomp006 error message.

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
5 years agos/implict/implicit/i
Edward Z. Yang [Fri, 30 May 2014 00:25:41 +0000 (17:25 -0700)] 
s/implict/implicit/i

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
5 years agoAdd missing stderr file for tcrun045.
Edward Z. Yang [Fri, 30 May 2014 00:29:25 +0000 (17:29 -0700)] 
Add missing stderr file for tcrun045.

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
5 years agoFix bitrotted GHC API test T6145.
Edward Z. Yang [Fri, 30 May 2014 00:20:50 +0000 (17:20 -0700)] 
Fix bitrotted GHC API test T6145.

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
5 years agoAdd .gitignore for autogenerated test files.
Edward Z. Yang [Fri, 30 May 2014 00:07:06 +0000 (17:07 -0700)] 
Add .gitignore for autogenerated test files.

I used this shell command to automatically generate the lists:

for i in `git ls-files -o --exclude-standard --directory`; do echo "`basename $i`" >> "`dirname "$i"`/.gitignore"; done

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
5 years agoUpdate T4891, T8639_api to follow 73c08ab10 (GHCi naming changes)
Edward Z. Yang [Thu, 29 May 2014 23:58:02 +0000 (16:58 -0700)] 
Update T4891, T8639_api to follow 73c08ab10 (GHCi naming changes)

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
5 years agoUpdate Haddock submodule.
Mateusz Kowalczyk [Thu, 29 May 2014 01:26:35 +0000 (03:26 +0200)] 
Update Haddock submodule.

This doesn't make any actual changes as to what the source looked like
at previous commit we were pointing to but I made some foolish reverts
that I now have to accomodate for. Sorry!

5 years agoFix comment typo
Jan Stolarek [Wed, 28 May 2014 15:27:29 +0000 (17:27 +0200)] 
Fix comment typo

5 years agoNo need to call defaultKind in mkTcEqPred
Simon Peyton Jones [Wed, 28 May 2014 08:16:53 +0000 (09:16 +0100)] 
No need to call defaultKind in mkTcEqPred

5 years agoUse mkTcEqPred rather than mkEqPred in the type checker
Simon Peyton Jones [Wed, 28 May 2014 08:16:16 +0000 (09:16 +0100)] 
Use mkTcEqPred rather than mkEqPred in the type checker

Type.mkEqPred has an assertion warning for kind compatibility.  But
during type checking we may form equality predicates with incompatible
kinds; hence TcType.mkTcEqPred, which does not check.  We were calling
the former instead of the latter in a couple of places, leading to
spurious debug warnings.

5 years agoT4006, environment001, T3307 all work on msys2
Simon Peyton Jones [Wed, 28 May 2014 08:12:34 +0000 (09:12 +0100)] 
T4006, environment001, T3307 all work on msys2

5 years agoTest Trac #9144
Simon Peyton Jones [Tue, 27 May 2014 21:27:44 +0000 (22:27 +0100)] 
Test Trac #9144

5 years agoAssert that matcher-derived PatSyn types match the (redundant) stored types in IfaceP...
Dr. ERDI Gergo [Tue, 27 May 2014 13:48:42 +0000 (21:48 +0800)] 
Assert that matcher-derived PatSyn types match the (redundant) stored types in IfacePatSyn

5 years agoStore IfExtNames for PatSyn matchers and wrappers in interface file.
Dr. ERDI Gergo [Tue, 27 May 2014 13:16:41 +0000 (21:16 +0800)] 
Store IfExtNames for PatSyn matchers and wrappers in interface file.
This way, the Ids for the matchers/wrappers are reused by importing
modules, and thus unfoldings are kept.

Also updates haddock submodule to accomodate tweaks in PatSyn representation

5 years agoReplace DeriveDataTypeable by AutoDeriveTypeable
Herbert Valerio Riedel [Tue, 27 May 2014 11:49:30 +0000 (13:49 +0200)] 
Replace DeriveDataTypeable by AutoDeriveTypeable

This is a first step towards addressing #9111

This results in the following additional Typeable (exported) instances
being generated (list was compiled by diff'ing hoogle txt output):

  instance Typeable CFile
  instance Typeable 'CFile
  instance Typeable CFpos
  instance Typeable 'CFpos
  instance Typeable CJmpBuf
  instance Typeable 'CJmpBuf
  instance Typeable ChItem
  instance Typeable QSem
  instance Typeable ID
  instance Typeable 'ID
  instance Typeable CONST
  instance Typeable Qi
  instance Typeable Qr
  instance Typeable Mp
  instance Typeable ConstrRep
  instance Typeable Fixity
  instance Typeable 'Prefix
  instance Typeable 'Infix
  instance Typeable Constr
  instance Typeable DataType
  instance Typeable DataRep
  instance Typeable Data
  instance Typeable HasResolution
  instance Typeable IsList

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
5 years agoAdd missing test file T7269
Simon Peyton Jones [Mon, 26 May 2014 16:03:23 +0000 (17:03 +0100)] 
Add missing test file T7269

5 years agoFix yet another bug in 'deriving' for polykinded classes (Trac #7269)
Simon Peyton Jones [Mon, 26 May 2014 14:25:30 +0000 (15:25 +0100)] 
Fix yet another bug in 'deriving' for polykinded classes (Trac #7269)

This patch makes the code a bit simpler if anything.

5 years agotest.mk: Be liberal in accepting GHC_PKG output
Joachim Breitner [Fri, 23 May 2014 20:27:58 +0000 (22:27 +0200)] 
test.mk: Be liberal in accepting GHC_PKG output

When the tree is not built, GHC_PKG refers to ghc-pkg in the patth,
which may not yet support --simple-output to suppress the field name. So
we strip the fieldname when parsing the output, to avoid annoying
warnings.

5 years agoTypos in comments
Gabor Greif [Fri, 23 May 2014 17:04:12 +0000 (19:04 +0200)] 
Typos in comments

5 years agoBump bytes-allocated for T3064
Simon Peyton Jones [Fri, 23 May 2014 08:41:27 +0000 (09:41 +0100)] 
Bump bytes-allocated for T3064

I'm not sure why this has increased, but it seems small

5 years agoWhite space only
Simon Peyton Jones [Fri, 23 May 2014 06:48:52 +0000 (07:48 +0100)] 
White space only

5 years agoMore debug info for failures in typeKind and kindFunResult
Simon Peyton Jones [Fri, 23 May 2014 06:48:40 +0000 (07:48 +0100)] 
More debug info for failures in typeKind and kindFunResult

5 years agoBetter pretty-printing for ClsInst
Simon Peyton Jones [Fri, 23 May 2014 06:48:06 +0000 (07:48 +0100)] 
Better pretty-printing for ClsInst

5 years agoMake the unifier a fixpoint even for the free kind vars of a tyvar
Simon Peyton Jones [Fri, 23 May 2014 06:47:17 +0000 (07:47 +0100)] 
Make the unifier a fixpoint even for the free kind vars of a tyvar

The (pure) unifier tcUnifyTys returns an idempotent substitution.
But previously the kinds of type variables free in the range of
the subst could have un-substituted kind variables.

This patch fixes that, fixing Trac #9106.

See Note [Finding the substitution fixpoint] in Unify

5 years agoSimple eta reduction in call to adjustMatchResults, just a tidy-up
Simon Peyton Jones [Mon, 19 May 2014 22:51:24 +0000 (23:51 +0100)] 
Simple eta reduction in call to adjustMatchResults, just a tidy-up

5 years agoTweaks to note; also fixed unicode quotes
Gabor Greif [Tue, 20 May 2014 09:04:54 +0000 (11:04 +0200)] 
Tweaks to note; also fixed unicode quotes

to regular ones.

5 years agoCoercible: Test case for now broken(?) corner case
Joachim Breitner [Tue, 20 May 2014 08:52:14 +0000 (10:52 +0200)] 
Coercible: Test case for now broken(?) corner case

involving a non-terminating newtype. This worked before 7e78faf03.
Probably not a problem, but still better to have a test case for it. See
ticket #9117.

5 years agoCoercible: Unwrap newtypes before coercing under tycons
Joachim Breitner [Tue, 20 May 2014 08:25:26 +0000 (10:25 +0200)] 
Coercible: Unwrap newtypes before coercing under tycons

This fixes parts of #9117.

5 years agoHarden imports in `DeriveConstants.hs` module
Herbert Valerio Riedel [Tue, 20 May 2014 07:40:36 +0000 (09:40 +0200)] 
Harden imports in `DeriveConstants.hs` module

This was generated by applying `-ddump-minimal-imports` and addresses
the current compile failure (see #9016) with GHC HEAD due to the new
`die` being exported by `System.Exit`

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
5 years agoFix below warning by including "unistd.h" also
Gabor Greif [Mon, 19 May 2014 20:50:41 +0000 (22:50 +0200)] 
Fix below warning by including "unistd.h" also

exec_signals_prepare.c:26:5: warning: implicit declaration of function 'execv' is invalid in C99
      [-Wimplicit-function-declaration]
    execv(argv[1], argv+1);
    ^
1 warning generated.

5 years agoCatch some typos
Gabor Greif [Mon, 19 May 2014 17:42:07 +0000 (19:42 +0200)] 
Catch some typos

5 years agoProvide deprecated backward compatible implementation to 'equalP'
Gabor Greif [Fri, 16 May 2014 17:41:34 +0000 (19:41 +0200)] 
Provide deprecated backward compatible implementation to 'equalP'

5 years agoRe-add 'classP' with a compatible implementation and a deprecation notice
Gabor Greif [Wed, 14 May 2014 21:41:50 +0000 (23:41 +0200)] 
Re-add 'classP' with a compatible implementation and a deprecation notice

5 years agoRemove the bit about External Core from flags.xml
Simon Peyton Jones [Fri, 16 May 2014 07:35:25 +0000 (08:35 +0100)] 
Remove the bit about External Core from flags.xml

This is a lefover vestige from Austin's removal of External Core

5 years agoTighten up wording in the section on let-generalisation and MonoLocalBinds
Simon Peyton Jones [Fri, 16 May 2014 07:34:44 +0000 (08:34 +0100)] 
Tighten up wording in the section on let-generalisation and MonoLocalBinds

5 years agoExtract derived constants from nm output for various OSes differently.
Christian Maeder [Thu, 3 Apr 2014 08:00:07 +0000 (10:00 +0200)] 
Extract derived constants from nm output for various OSes differently.

Fixes #8783.

In order to avoid querying the nm version that does not work on Mac OS X
we use the "nm -P" output that is supposed to produce (more portable)
POSIX output and works on all tested OSes (MinGW, Mac OS X, Solaris and
Linux using GNU nm) although slightly different (as documented). The "nm
-P" output is actually only needed to recognize the output of a non-GNU
Solaris nm (all other OSes produce sane outut using "nm" only).

Signed-off-by: Austin Seipp <austin@well-typed.com>
5 years agointeger-gmp: do not confuse ./configure (#8783)
Christian Maeder [Mon, 19 May 2014 02:36:40 +0000 (21:36 -0500)] 
integer-gmp: do not confuse ./configure (#8783)

Signed-off-by: Austin Seipp <austin@well-typed.com>
5 years agorts: remove stable-names from hashtable upon free
Edward Z. Yang [Mon, 19 May 2014 02:32:10 +0000 (21:32 -0500)] 
rts: remove stable-names from hashtable upon free

This fixes #9078.

Signed-off-by: Austin Seipp <austin@well-typed.com>
5 years agobase: Document Foreign.ForeignPtr (#8475)
Chris Heller [Mon, 19 May 2014 02:31:14 +0000 (21:31 -0500)] 
base: Document Foreign.ForeignPtr (#8475)

Signed-off-by: Austin Seipp <austin@well-typed.com>
5 years agoghc: Update containers submodule
Austin Seipp [Sun, 18 May 2014 21:58:46 +0000 (16:58 -0500)] 
ghc: Update containers submodule

Also update a few tests, since containers now has IsList instances.

Signed-off-by: Austin Seipp <austin@well-typed.com>
5 years agoOnly uninstall signal handlers if they were actually installed (#9068)
Simon Marlow [Wed, 14 May 2014 20:10:06 +0000 (21:10 +0100)] 
Only uninstall signal handlers if they were actually installed (#9068)

Submitted by: tomgr

5 years agoRefactoring around TyCon.isSynTyCon
Simon Peyton Jones [Thu, 15 May 2014 15:07:04 +0000 (16:07 +0100)] 
Refactoring around TyCon.isSynTyCon

* Document isSynTyCon better
* Add isTypeSyonymTyCon for regular H98 type synonyms
* Use isTypeSynonymTyCon rather than isSynTyCon where
  the former is really intended

All arose as part of a bug I introduced when fixing Trac #9102,
thinking that isSynTyCon meant H98 type syononyms.

5 years agoExpress OPTIONS_GHC as LANGUAGE pragmas
Herbert Valerio Riedel [Thu, 15 May 2014 11:52:14 +0000 (13:52 +0200)] 
Express OPTIONS_GHC as LANGUAGE pragmas

These two instances were missed previously for some unknown reason

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
5 years agoAdd LANGUAGE pragmas to compiler/ source files
Herbert Valerio Riedel [Wed, 14 May 2014 17:46:28 +0000 (19:46 +0200)] 
Add LANGUAGE pragmas to compiler/ source files

In some cases, the layout of the LANGUAGE/OPTIONS_GHC lines has been
reorganized, while following the convention, to

- place `{-# LANGUAGE #-}` pragmas at the top of the source file, before
  any `{-# OPTIONS_GHC #-}`-lines.

- Moreover, if the list of language extensions fit into a single
  `{-# LANGUAGE ... -#}`-line (shorter than 80 characters), keep it on one
  line. Otherwise split into `{-# LANGUAGE ... -#}`-lines for each
  individual language extension. In both cases, try to keep the
  enumeration alphabetically ordered.
  (The latter layout is preferable as it's more diff-friendly)

While at it, this also replaces obsolete `{-# OPTIONS ... #-}` pragma
occurences by `{-# OPTIONS_GHC ... #-}` pragmas.

5 years agoAvoid trivial cases of NondecreasingIndentation
Herbert Valerio Riedel [Thu, 15 May 2014 07:51:51 +0000 (09:51 +0200)] 
Avoid trivial cases of NondecreasingIndentation

This cleanup allows the following refactoring commit to avoid adding a
few `{-# LANGUAGE NondecreasingIndentation #-}` pragmas.

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
5 years agoConvert `ghc-bin.cabal` to use others-extensions
Herbert Valerio Riedel [Wed, 14 May 2014 10:41:21 +0000 (12:41 +0200)] 
Convert `ghc-bin.cabal` to use others-extensions

This replaces the previous `default-extensions` by per-file declared
`{-# LANGUAGE ... #-}` pragmas.

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>