Simon Marlow [Tue, 5 Oct 2010 14:47:35 +0000 (14:47 +0000)]
Fix a very rare crash in GHCi
When a BCO with a zero-length bitmap was right at the edge of
allocated memory, we were reading a word of non-existent memory.
This showed up as a segfault in T789(ghci) for me, but the crash was
extremely sensitive and went away with most changes.
Also, optimised scavenge_large_bitmap a bit while I was in there.
Simon Marlow [Fri, 24 Sep 2010 15:24:45 +0000 (15:24 +0000)]
Using 'stdcall' when it is not supported is only a warning now (#3336)
Simon Marlow [Fri, 24 Sep 2010 15:02:02 +0000 (15:02 +0000)]
remove unnecessary stg_noForceIO (#3508)
Ian Lynagh [Sun, 3 Oct 2010 12:57:07 +0000 (12:57 +0000)]
Replace an outputStr with putStrLn calls; fixes #4332
Ian Lynagh [Thu, 30 Sep 2010 22:47:41 +0000 (22:47 +0000)]
make test and fulltest targets in the main Makefile; fixes #4297
You can now run "make test" in the root, and the fast testsuite will be
run with cleaning enabled. It will also put the summary in
testsuite_summary.txt.
Ian Lynagh [Thu, 30 Sep 2010 21:01:28 +0000 (21:01 +0000)]
Don't show the loaded packages in ":show packages"; fixes #4300
It's never worked properly, and the information is in ":show linker".
Ian Lynagh [Thu, 30 Sep 2010 19:25:52 +0000 (19:25 +0000)]
Handle EXTRA_LIBRARIES when building programs
And set hp2ps's EXTRA_LIBRARIES. Based on a patch from Sergei Trofimovich.
Ian Lynagh [Wed, 29 Sep 2010 13:33:28 +0000 (13:33 +0000)]
Fix the doc directory on Windows
Ian Lynagh [Wed, 29 Sep 2010 00:00:24 +0000 (00:00 +0000)]
Remove an unused import on Windows
Ian Lynagh [Tue, 28 Sep 2010 23:58:44 +0000 (23:58 +0000)]
Use showCommandForUser when showing tracing commands
Ian Lynagh [Tue, 28 Sep 2010 20:19:38 +0000 (20:19 +0000)]
Fix hsc2hs docs: 'gcc' is now the default compiler, not 'ghc'; fixes #4341
Simon Marlow [Sat, 25 Sep 2010 19:35:48 +0000 (19:35 +0000)]
Use an empty signal handler for SIGPIPE instead of SIG_IGN
This is so that the SIGPIPE handler gets reset to the default
automatically on exec().
Ian Lynagh [Sat, 25 Sep 2010 21:00:29 +0000 (21:00 +0000)]
Fix the TH deps
Ian Lynagh [Fri, 24 Sep 2010 19:18:58 +0000 (19:18 +0000)]
Check inplace doesn't exist before we try to create it
This fixes rerunning configure in a tree which already has an inplace
directory. Edward Z Yang ran into this; I guess whether it actually
fails depends on details of your installation, or we'd have run into
it sooner.
simonpj@microsoft.com [Fri, 24 Sep 2010 15:58:15 +0000 (15:58 +0000)]
Fix an egregious bug: INLINE pragmas on monomorphic Ids were being ignored
I had do to some refactoring to make this work nicely
but now it does. I can't think how this escaped our
attention for so long!
simonpj@microsoft.com [Fri, 24 Sep 2010 15:57:07 +0000 (15:57 +0000)]
Eta expand only lambdas that bind a non-dictionary Id
See Note [When to eta expand]. The idea is that dictionary
lambdas are invisible to the user, so we shouldn't eta
expand them.
simonpj@microsoft.com [Fri, 24 Sep 2010 15:56:20 +0000 (15:56 +0000)]
Add a comment
simonpj@microsoft.com [Fri, 24 Sep 2010 15:56:14 +0000 (15:56 +0000)]
Add a debug print
simonpj@microsoft.com [Fri, 24 Sep 2010 15:56:00 +0000 (15:56 +0000)]
Just moving comments around
Simon Marlow [Fri, 24 Sep 2010 13:31:54 +0000 (13:31 +0000)]
use putStrLn instead of Haskeline's outputStrLn
use of the latter caused problems for Claus Reinke's macros that
redirect stdout.
Ian Lynagh [Fri, 24 Sep 2010 12:04:23 +0000 (12:04 +0000)]
Change "OPTIONS" to "OPTIONS_GHC" in error messages; fixes #4327
Ian Lynagh [Thu, 23 Sep 2010 22:02:44 +0000 (22:02 +0000)]
Add deps for TH uses in vector
Ian Lynagh [Thu, 23 Sep 2010 14:32:41 +0000 (14:32 +0000)]
Bump Cabal dep
Ian Lynagh [Thu, 23 Sep 2010 14:17:19 +0000 (14:17 +0000)]
Update Cabal's version number
Ian Lynagh [Thu, 23 Sep 2010 14:05:25 +0000 (14:05 +0000)]
Build primitive with stage2
Simon Marlow [Fri, 24 Sep 2010 11:38:37 +0000 (11:38 +0000)]
Fix the Windows __chkstk build error (missing Linker symbol)
Simon Marlow [Thu, 23 Sep 2010 14:19:57 +0000 (14:19 +0000)]
emit a helpful error message for missing DPH packages
simonpj@microsoft.com [Fri, 24 Sep 2010 08:47:37 +0000 (08:47 +0000)]
Fix computation of installed packages
This is a follow-on to Simon's patch yesterday, developed
with him. It cleans up the computation of how packages
are installed, and installs the right ones.
simonpj@microsoft.com [Fri, 24 Sep 2010 07:09:14 +0000 (07:09 +0000)]
Fix braino in WwLib/Literal patch
simonpj@microsoft.com [Thu, 23 Sep 2010 13:01:17 +0000 (13:01 +0000)]
For now, switch off incomplete-pattern warnings in containers
Put it back on when my patch is applied to the containers repo.
(the one that removes two refuable lambdas)
simonpj@microsoft.com [Thu, 23 Sep 2010 13:00:32 +0000 (13:00 +0000)]
Make -funfolding-dict-threshold work properly
and increase its default value. This makes overloaded functions
a bit keener to inline. Which fixes Trac #4321
simonpj@microsoft.com [Thu, 23 Sep 2010 12:59:10 +0000 (12:59 +0000)]
Impredicative types is no longer deprecated
simonpj@microsoft.com [Thu, 23 Sep 2010 12:59:00 +0000 (12:59 +0000)]
Do not make FunctionalDependencies force MonoLocalBinds
Simon Marlow [Thu, 23 Sep 2010 12:35:58 +0000 (12:35 +0000)]
move CHECKED settings to the right place
Simon Marlow [Thu, 23 Sep 2010 12:20:55 +0000 (12:20 +0000)]
turn off -Werror for primitive and vector
Simon Marlow [Thu, 23 Sep 2010 10:45:42 +0000 (10:45 +0000)]
Add primitive and vector packages for DPH support
DPH is now using the public vector package instead of its internal
version.
vector and primitive are not "boot" packages; they aren't required to
build GHC, but they are required to validate (because we include DPH
when validating).
If you say './darcs-all get --no-dph' then you don't get DPH, vector,
or primitive.
Simon Marlow [Thu, 23 Sep 2010 09:56:42 +0000 (09:56 +0000)]
Refactoring and tidy up in the build system
Instead of the ghc-stage and ghc-stage2-package files in a package, we
now have a list of these in ghc.mk. There are other similar lists (of
boot-packages and non-installable packages), so this is not too bad,
and is simpler.
While poking around in the top-level ghc.mk file I spotted various
opportunities to clean up and re-order some of the cruft that has
accumulated over time.
simonpj@microsoft.com [Thu, 23 Sep 2010 11:13:56 +0000 (11:13 +0000)]
Allow absent State# RealWorld arguments
simonpj@microsoft.com [Thu, 23 Sep 2010 10:59:49 +0000 (10:59 +0000)]
Add notSCCNote, and use it
The point here is that SCCs get in the way of eta
expansion and we must treat them uniformly.
simonpj@microsoft.com [Thu, 23 Sep 2010 10:59:01 +0000 (10:59 +0000)]
Remove use of lambda with a refutable pattern
simonpj@microsoft.com [Thu, 23 Sep 2010 10:58:20 +0000 (10:58 +0000)]
Avoid ASSERT black hole
When this ASSERT tripped in CoreToStg it tried to print out
too much, which tripped the asssertion again. Result: an
infinite loop with no output at all. Hard to debug!
simonpj@microsoft.com [Thu, 23 Sep 2010 10:57:32 +0000 (10:57 +0000)]
Rejig the absent-arg stuff for unlifted types
This is what was giving the "absent entered" messages
See Note [Absent errors] in WwLib. We now return a
suitable literal for absent values of unlifted type.
simonpj@microsoft.com [Wed, 22 Sep 2010 13:39:34 +0000 (13:39 +0000)]
Remove -fwarn-simple-patterns, and make -fwarn-incomplete-patterns include lambdas
This makes
\(x:xs) -> e
want when you have -fwarn-incomplete-patterns, which is consistent.
simonpj@microsoft.com [Wed, 22 Sep 2010 13:38:01 +0000 (13:38 +0000)]
Get rid of non-exhaustive lambda
simonpj@microsoft.com [Wed, 22 Sep 2010 13:37:41 +0000 (13:37 +0000)]
Fix an ASSERT failure with profiling
The problem arose with this kind of thing
x = (,) (scc "blah" Nothing)
Then 'x' is marked NoCafRefs by CoreTidy, becuase it has
arity 1, and doesn't mention any caffy things.
That in turns means that CorePrep must not float out the
sat binding to give
sat = scc "blah" Nothing
x = (,) sat
Rather we must generate
x = \eta. let sat = scc "blah" Nothing
in (,) sat eta
URGH! This Caf stuff is such a mess.
Ian Lynagh [Wed, 22 Sep 2010 22:52:39 +0000 (22:52 +0000)]
Remove an out of date paragraph from the user guide; fixes #4331
Ian Lynagh [Tue, 21 Sep 2010 22:26:34 +0000 (22:26 +0000)]
Fix bindisttest when GhcProfiled = YES
Ian Lynagh [Tue, 21 Sep 2010 21:39:16 +0000 (21:39 +0000)]
Fixes for when HADDOCK_DOCS=NO
Ian Lynagh [Tue, 21 Sep 2010 19:59:35 +0000 (19:59 +0000)]
Bump version to 7.1
Ian Lynagh [Tue, 21 Sep 2010 19:37:21 +0000 (19:37 +0000)]
Don't use -march=i686 on powerpc-apple-darwin
Thorikil ran into this when doing a PPC OS X build. We now also don't
use -m32 on PPC/OSX, but I don't think it should be necessary. We can
add it back if it does turn out to be.
Simon Marlow [Tue, 21 Sep 2010 13:47:29 +0000 (13:47 +0000)]
add a simple trace facility to the build system
saying
make TRACE=1
prints most of the macro calls and their arguments. It's easy to
trace new macros; see rules/trace.mk.
Simon Marlow [Tue, 21 Sep 2010 10:01:53 +0000 (10:01 +0000)]
fix building with extra packages (packages were added to BUILD_DIRS twice)
Also add some comments about what extra-packages is doing
Simon Marlow [Mon, 20 Sep 2010 14:43:07 +0000 (14:43 +0000)]
add extra packages to $(EXTRA_PACKAGES), so we avoid installing them by default
Ian Lynagh [Tue, 21 Sep 2010 12:16:42 +0000 (12:16 +0000)]
Fix indexing error in archive loader
Ian Lynagh [Tue, 21 Sep 2010 12:16:24 +0000 (12:16 +0000)]
Add some -Dl belches
Ian Lynagh [Tue, 21 Sep 2010 12:17:14 +0000 (12:17 +0000)]
Add casts to fix warnings
Ian Lynagh [Tue, 21 Sep 2010 00:04:51 +0000 (00:04 +0000)]
Add support for BSD-variant large filenames in .a archives
Ian Lynagh [Mon, 20 Sep 2010 23:04:49 +0000 (23:04 +0000)]
Tell Cabal that we're not building GHCi libs if UseArchivesForGhci=YES
Ian Lynagh [Mon, 20 Sep 2010 21:15:38 +0000 (21:15 +0000)]
"UseArchivesForGhci = YES" on darwin
Ian Lynagh [Mon, 20 Sep 2010 21:02:39 +0000 (21:02 +0000)]
Add a dependency that my OS X build has recently started tripping up over
Ian Lynagh [Mon, 20 Sep 2010 21:05:23 +0000 (21:05 +0000)]
Add "Use archives for ghci" to --info output
Ian Lynagh [Mon, 20 Sep 2010 20:16:20 +0000 (20:16 +0000)]
Implement archive loading for ghci
Ian Lynagh [Mon, 20 Sep 2010 20:15:13 +0000 (20:15 +0000)]
Tweak gen_contents_index now dph may not be there
Ian Lynagh [Mon, 20 Sep 2010 18:10:32 +0000 (18:10 +0000)]
Filter out the FFI library when loading package in ghci
The FFI GHCi import lib isn't needed as
compiler/ghci/Linker.lhs + rts/Linker.c link the
interpreted references to FFI to the compiled FFI.
We therefore filter it out so that we don't get
duplicate symbol errors.
simonpj@microsoft.com [Sun, 19 Sep 2010 16:26:23 +0000 (16:26 +0000)]
Loosen the conditions for -XUndecidableInstances; fixes Trac #4200
simonpj@microsoft.com [Sun, 19 Sep 2010 15:33:55 +0000 (15:33 +0000)]
Further improvements in error messages
simonpj@microsoft.com [Sun, 19 Sep 2010 15:33:27 +0000 (15:33 +0000)]
Add a flag -fwarn-missing-local-sigs, and improve -fwarn-mising-signatures
The new flag prints out a warning if you have a local,
polymorphic binding that lacks a type signature. It's meant
to help with the transition to the new typechecker, which
discourages local let-generalisation.
At the same time I moved the missing-signature code to TcHsSyn,
where it takes place as part of zonking. That way the
types are reported after all typechecking is complete,
thereby fixing Trac #3696. (It's even more important for
local bindings, which is why I made the change.)
simonpj@microsoft.com [Sun, 19 Sep 2010 15:22:01 +0000 (15:22 +0000)]
Include the "stupid theta" in the type of $con2tag
Ian Lynagh [Sun, 19 Sep 2010 13:29:27 +0000 (13:29 +0000)]
Add a release note about the typechecker
Matthias Kilian [Sat, 18 Sep 2010 20:50:40 +0000 (20:50 +0000)]
Enable shared libs on OpenBSD
Ian Lynagh [Sat, 18 Sep 2010 16:38:15 +0000 (16:38 +0000)]
Add separate functions for querying DynFlag and ExtensionFlag options
and remove the temporary DOpt class workaround.
Ian Lynagh [Sat, 18 Sep 2010 14:59:04 +0000 (14:59 +0000)]
Fix mkUserGuidePart deps
We need to directly depend on the stage1 libs. The stage1 compiler lib
doesn't depend on them.
Ian Lynagh [Sat, 18 Sep 2010 13:23:28 +0000 (13:23 +0000)]
Fix build on cygwin: Normalise slashes in .depend files to be /
Ian Lynagh [Fri, 17 Sep 2010 22:44:09 +0000 (22:44 +0000)]
extra packages info is now read from packages file
rather than being repeated in the build system
Ian Lynagh [Fri, 17 Sep 2010 19:44:35 +0000 (19:44 +0000)]
Tweak darcs-all
Ian Lynagh [Fri, 17 Sep 2010 18:36:09 +0000 (18:36 +0000)]
Bump dependencies
Ian Lynagh [Fri, 17 Sep 2010 17:48:50 +0000 (17:48 +0000)]
Library release notes for 7.0.1
simonpj@microsoft.com [Fri, 17 Sep 2010 14:04:03 +0000 (14:04 +0000)]
Fix overriding of implicit parameters in the solver
simonpj@microsoft.com [Fri, 17 Sep 2010 14:02:04 +0000 (14:02 +0000)]
Minor type printing amomaly
simonpj@microsoft.com [Fri, 17 Sep 2010 14:01:56 +0000 (14:01 +0000)]
Spaces only
simonpj@microsoft.com [Fri, 17 Sep 2010 14:01:50 +0000 (14:01 +0000)]
Minor refactoring
simonpj@microsoft.com [Fri, 17 Sep 2010 14:01:38 +0000 (14:01 +0000)]
Add types of implicit parameters as untouchable
This is a tricky point:
see Note [Implicit parameter untouchables]
simonpj@microsoft.com [Fri, 17 Sep 2010 14:00:54 +0000 (14:00 +0000)]
Better pretty printing of implicit parameters
simonpj@microsoft.com [Fri, 17 Sep 2010 12:12:06 +0000 (12:12 +0000)]
Yet more error message improvement
simonpj@microsoft.com [Fri, 17 Sep 2010 09:47:21 +0000 (09:47 +0000)]
More error message wibbles
simonpj@microsoft.com [Fri, 17 Sep 2010 09:28:34 +0000 (09:28 +0000)]
More error refactoring
simonpj@microsoft.com [Fri, 17 Sep 2010 08:07:26 +0000 (08:07 +0000)]
Refactor type errors a bit
Improves kind error messages in paticular
simonpj@microsoft.com [Thu, 16 Sep 2010 17:04:52 +0000 (17:04 +0000)]
Fix a very subtle shadowing bug in optCoercion
See Note [Subtle shadowing in coercions]
This is what was going wrong in Trac 4160.
simonpj@microsoft.com [Thu, 16 Sep 2010 17:03:48 +0000 (17:03 +0000)]
Fix bad error in tyVarsOfType
We weren't gathering the type variables free in the kind
of a coercion binder!
simonpj@microsoft.com [Thu, 16 Sep 2010 17:03:10 +0000 (17:03 +0000)]
More assertions
simonpj@microsoft.com [Thu, 16 Sep 2010 17:02:29 +0000 (17:02 +0000)]
Add more location info in CoreLint
simonpj@microsoft.com [Thu, 16 Sep 2010 16:59:44 +0000 (16:59 +0000)]
Print coercion variables as such (debugging change only)
simonpj@microsoft.com [Wed, 15 Sep 2010 22:59:35 +0000 (22:59 +0000)]
Remove pprTrace
simonpj@microsoft.com [Wed, 15 Sep 2010 22:32:30 +0000 (22:32 +0000)]
Remove dead code dealing with type refinement
simonpj@microsoft.com [Wed, 15 Sep 2010 22:32:05 +0000 (22:32 +0000)]
Use mkAppTy
Using AppTy in CoreLint was giving a bogus Lint failure
simonpj@microsoft.com [Wed, 15 Sep 2010 22:12:53 +0000 (22:12 +0000)]
Comments only
simonpj@microsoft.com [Wed, 15 Sep 2010 22:12:29 +0000 (22:12 +0000)]
Extend eta reduction to work with casted arguments
See Trac #4201, and
Note [Eta reduction with casted arguments]
Thanks to Louis Wasserman for suggesting this, and
implementing an early version of the patch
simonpj@microsoft.com [Wed, 15 Sep 2010 15:42:49 +0000 (15:42 +0000)]
Allow "INLINEABLE" as a synonym
simonpj@microsoft.com [Wed, 15 Sep 2010 15:42:35 +0000 (15:42 +0000)]
Documentation for INLINABLE
simonpj@microsoft.com [Wed, 15 Sep 2010 15:12:42 +0000 (15:12 +0000)]
Implement TH reification of instances (Trac #1835)
Accompanying patch for template-haskell package is reqd