ghc-hetmet.git
12 years agoAdd a push-all script
Ian Lynagh [Tue, 19 Jun 2007 19:28:20 +0000 (19:28 +0000)]
Add a push-all script

12 years agoImprove misleading warning (Trac #1422)
simonpj@microsoft.com [Tue, 19 Jun 2007 16:53:54 +0000 (16:53 +0000)]
Improve misleading warning (Trac #1422)

12 years agoFix a bug in the handling of implication constraints (Trac #1430)
simonpj@microsoft.com [Tue, 19 Jun 2007 16:26:13 +0000 (16:26 +0000)]
Fix a bug in the handling of implication constraints (Trac #1430)

Trac #1430 showed up quite a nasty bug in the handling of implication
constraints when we are *inferring* the type of a function.
See Note [Inference and implication constraints]:

  We can't (or at least don't) abstract over implications.  But we might
  have an implication constraint (perhaps arising from a nested pattern
  match) like
   C a => D a
  when we are now trying to quantify over 'a'.  Our best approximation
  is to make (D a) part of the inferred context, so we can use that to
  discharge the implication. Hence getImplicWanteds.

My solution is not marvellous, but it's better than before.  I transferred
function getDefaultableDicts from Inst to TcSimplify (since it's only
called there).  Many of the remaining 50 new lines are comments.  But
there is undoubtedly more code than before (sigh).

Test is tc228.

12 years agoComments only
simonpj@microsoft.com [Tue, 19 Jun 2007 16:26:03 +0000 (16:26 +0000)]
Comments only

12 years agoRemove erroneous requirement to import Control.Monad.Fix when using mdo
simonpj@microsoft.com [Tue, 19 Jun 2007 08:46:34 +0000 (08:46 +0000)]
Remove erroneous requirement to import Control.Monad.Fix when using mdo

See Trac #1426

12 years agoFirst cut at documentation for HPC option in GHC
andy@galois.com [Tue, 19 Jun 2007 05:56:54 +0000 (05:56 +0000)]
First cut at documentation for HPC option in GHC

12 years agoBuild package ndp if present
Manuel M T Chakravarty [Tue, 19 Jun 2007 01:15:10 +0000 (01:15 +0000)]
Build package ndp if present

12 years agotypo
Simon Marlow [Mon, 18 Jun 2007 11:18:17 +0000 (11:18 +0000)]
typo

12 years agoMore debugger output order consistency
Ian Lynagh [Mon, 18 Jun 2007 10:28:50 +0000 (10:28 +0000)]
More debugger output order consistency

12 years agoSeveral changes to the code dealing with newtypes in :print
Pepe Iborra [Sun, 17 Jun 2007 19:34:35 +0000 (19:34 +0000)]
Several changes to the code dealing with newtypes in :print

I simplified the code, killed some unreachable blocks, and renamed it so that it corresponds more accurately with what is explained in the technical report

http://www.dsic.upv.es/docs/bib-dig/informes/etd-04042007-111431/papernew2.pdf

Also, fixed a bug related to newtypes in the pretty printer

12 years agoRemove now non-existant "Breakpoints" entry from package.conf.in
Pepe Iborra [Wed, 13 Jun 2007 09:21:02 +0000 (09:21 +0000)]
Remove now non-existant "Breakpoints" entry from package.conf.in

12 years agoSort names before printing them in the debugger so output order is consistent
Ian Lynagh [Sun, 17 Jun 2007 21:52:05 +0000 (21:52 +0000)]
Sort names before printing them in the debugger so output order is consistent

12 years agoUse %d rather than %zd on Windows
Ian Lynagh [Sat, 16 Jun 2007 19:37:45 +0000 (19:37 +0000)]
Use %d rather than %zd on Windows

12 years agoAdd missing quotes in generated script
Ian Lynagh [Fri, 15 Jun 2007 18:45:27 +0000 (18:45 +0000)]
Add missing quotes in generated script

12 years agoFix size mismatch errors in mkDerivedConstants.c
Ian Lynagh [Fri, 15 Jun 2007 18:23:37 +0000 (18:23 +0000)]
Fix size mismatch errors in mkDerivedConstants.c

12 years agoworkaround for #1421 (Solaris linker being picky about .size)
Simon Marlow [Thu, 14 Jun 2007 09:57:27 +0000 (09:57 +0000)]
workaround for #1421 (Solaris linker being picky about .size)

12 years agoI didn't quite fix #1424 completely - hopefully this gets it right
Simon Marlow [Wed, 13 Jun 2007 14:45:05 +0000 (14:45 +0000)]
I didn't quite fix #1424 completely - hopefully this gets it right

12 years agoFIX #1424: x86_64 NCG generated wrong code for foreign call with >8 double args
Simon Marlow [Wed, 13 Jun 2007 14:24:31 +0000 (14:24 +0000)]
FIX #1424: x86_64 NCG generated wrong code for foreign call with >8 double args
I guess we have a missing test... I'll add one

12 years agoanother fix for -hb: we appear to be freeing the hash table and arena twice
Simon Marlow [Wed, 13 Jun 2007 11:15:52 +0000 (11:15 +0000)]
another fix for -hb: we appear to be freeing the hash table and arena twice

12 years agoFIX #1418 (partially)
Simon Marlow [Wed, 13 Jun 2007 10:29:28 +0000 (10:29 +0000)]
FIX #1418 (partially)
When the con_desc field of an info table was made into a relative
reference, this had the side effect of making the profiling fields
(closure_desc and closure_type) also relative, but only when compiling
via C, and the heap profiler was still treating them as absolute,
leading to crashes when profiling with -hd or -hy.

This patch fixes up the story to be consistent: these fields really
should be relative (otherwise we couldn't make shared versions of the
profiling libraries), so I've made them relative and fixed up the RTS
to know about this.

12 years agoshould be using GET_CON_DESC() to get the constructor name
Simon Marlow [Wed, 13 Jun 2007 09:52:01 +0000 (09:52 +0000)]
should be using GET_CON_DESC() to get the constructor name

12 years agowarning police
Simon Marlow [Wed, 13 Jun 2007 09:51:44 +0000 (09:51 +0000)]
warning police

12 years agoUse $(if...) to get lazy tests instead of if..endif in a few places
Simon Marlow [Wed, 13 Jun 2007 08:51:38 +0000 (08:51 +0000)]
Use $(if...) to get lazy tests instead of if..endif in a few places
This means it should be possible to set GhcUnregisterised=YES in
build.mk and the rest of the settings should follow automatically
(GhcWithNativeCodeGen, SplitObjs, GhcWithSMP).

12 years agoTweak banner printing 2007-06-12
Ian Lynagh [Tue, 12 Jun 2007 21:07:38 +0000 (21:07 +0000)]
Tweak banner printing
* -{short,long}-ghci-banner are now dynamic options, so you can put
  ":set -short-ghci-banner" in .ghci
* The -v2 banner information now always tells you what compiler booted GHC,
  and what stage the compiler is. Thus we no longer assume that stage > 1
  iff GHCI is defined.

13 years agoFIX #1378 Add option for a shorter banner on GHCi startup
cdsmith@twu.net [Fri, 1 Jun 2007 05:36:44 +0000 (05:36 +0000)]
FIX #1378 Add option for a shorter banner on GHCi startup

Add -short-ghci-banner and -long-ghci-banner.  The default is long, which is
the current behavior.  The short banner prints a one-line introduction with
only the version, web site, and ":? for help" message.

12 years agoWindows bindist tweaking
Ian Lynagh [Sat, 9 Jun 2007 15:14:38 +0000 (15:14 +0000)]
Windows bindist tweaking

12 years agoFix the ghc package in bindists
Ian Lynagh [Sat, 9 Jun 2007 13:43:02 +0000 (13:43 +0000)]
Fix the ghc package in bindists

12 years agoFix up whitespace
Ian Lynagh [Sat, 9 Jun 2007 11:22:35 +0000 (11:22 +0000)]
Fix up whitespace

12 years agoFix bindists on Windows
Ian Lynagh [Sat, 9 Jun 2007 11:19:20 +0000 (11:19 +0000)]
Fix bindists on Windows

12 years agoInstall the RTS from a bindist correctly
Ian Lynagh [Tue, 5 Jun 2007 13:39:56 +0000 (13:39 +0000)]
Install the RTS from a bindist correctly

12 years agoOnly add the extra Windows libraries if we are on Windows
Ian Lynagh [Mon, 4 Jun 2007 13:47:14 +0000 (13:47 +0000)]
Only add the extra Windows libraries if we are on Windows

12 years agoFollow Cabal change; .setup-config is now dist/setup-config
Ian Lynagh [Mon, 4 Jun 2007 13:46:45 +0000 (13:46 +0000)]
Follow Cabal change; .setup-config is now dist/setup-config

12 years agoCopy more of base's hacks into installPackage; *sigh*
Ian Lynagh [Sat, 2 Jun 2007 19:56:51 +0000 (19:56 +0000)]
Copy more of base's hacks into installPackage; *sigh*

12 years agoHack libsubdir so that it does the right thing on both Windows and non-Windows
Ian Lynagh [Sat, 2 Jun 2007 19:38:26 +0000 (19:38 +0000)]
Hack libsubdir so that it does the right thing on both Windows and non-Windows

13 years agoRemove now-unused files
Ian Lynagh [Sat, 2 Jun 2007 12:11:59 +0000 (12:11 +0000)]
Remove now-unused files

13 years agoFix ghcii.sh creation
Ian Lynagh [Sat, 2 Jun 2007 12:10:17 +0000 (12:10 +0000)]
Fix ghcii.sh creation

13 years agoExplicitly set datadir
Ian Lynagh [Sat, 2 Jun 2007 01:51:01 +0000 (01:51 +0000)]
Explicitly set datadir
Cabal defaults to the value we want on Linux, but uses
"C:\\Program Files\\Common Files" on Windows.

13 years agoFix a -- that somehow turned into a ----
Ian Lynagh [Fri, 1 Jun 2007 22:43:01 +0000 (22:43 +0000)]
Fix a -- that somehow turned into a ----

13 years agoFix creation of hsc2hs-inplace.bat
Ian Lynagh [Fri, 1 Jun 2007 22:33:55 +0000 (22:33 +0000)]
Fix creation of hsc2hs-inplace.bat

13 years agoghc-pkg-inplace now has .bat extension on Windows
Ian Lynagh [Fri, 1 Jun 2007 21:49:53 +0000 (21:49 +0000)]
ghc-pkg-inplace now has .bat extension on Windows

13 years agoAdd omitted files (mk/{install,recurse}.mk)
Ian Lynagh [Fri, 1 Jun 2007 21:05:55 +0000 (21:05 +0000)]
Add omitted files (mk/{install,recurse}.mk)

13 years agoFix bindist creation
Ian Lynagh [Fri, 1 Jun 2007 19:06:59 +0000 (19:06 +0000)]
Fix bindist creation
Bindists should now work again, when doing "make install" at least.
"make in-place" is probably still broken.

13 years agoRework the build system a bit
Ian Lynagh [Thu, 31 May 2007 14:35:05 +0000 (14:35 +0000)]
Rework the build system a bit
Key changes:
* Always build as if BIN_DIST is 1. BIN_DIST is thus removed.
* Libraries are configured with prefix set to $$topdir rather than $(prefix)

13 years agoMake package.conf files a bit more readable
Ian Lynagh [Wed, 30 May 2007 14:46:33 +0000 (14:46 +0000)]
Make package.conf files a bit more readable

12 years agoAdding new ffi calls into the Hpc rts subsystem
andy@galois.com [Tue, 12 Jun 2007 07:46:55 +0000 (07:46 +0000)]
Adding new ffi calls into the Hpc rts subsystem

foreign import ccall unsafe hs_hpc_write :: CString -> IO ()
foreign import ccall unsafe hs_hpc_read  :: CString -> IO ()

These write a Hpc description of the state of the world to a file,
or read a description into the current Hpc tickbox subsystem.

12 years agodon't add -threaded in stage2/3 if we didn't build the threaded RTS
Simon Marlow [Tue, 12 Jun 2007 08:17:03 +0000 (08:17 +0000)]
don't add -threaded in stage2/3 if we didn't build the threaded RTS

12 years agofix compile error in the !GHCI_TABLES_NEXT_TO_CODE case
Simon Marlow [Tue, 12 Jun 2007 07:46:57 +0000 (07:46 +0000)]
fix compile error in the !GHCI_TABLES_NEXT_TO_CODE case

13 years agoFix PPC Mac OS X memory access problem in SMP.h (#1362)
Thorkil Naur [Fri, 18 May 2007 16:59:57 +0000 (16:59 +0000)]
Fix PPC Mac OS X memory access problem in SMP.h (#1362)

12 years agoUsing blacklist of places not to cover, rather than reverse-engineer deriving.
andy@galois.com [Sat, 9 Jun 2007 00:00:21 +0000 (00:00 +0000)]
Using blacklist of places not to cover, rather than reverse-engineer deriving.

12 years agoNot adding ticks to compiler generated derived code.
andy@galois.com [Fri, 8 Jun 2007 22:40:16 +0000 (22:40 +0000)]
Not adding ticks to compiler generated derived code.

12 years agoFix worker/wrapper ids for newtype instances
Manuel M T Chakravarty [Fri, 8 Jun 2007 06:10:46 +0000 (06:10 +0000)]
Fix worker/wrapper ids for newtype instances
- mkDataConIds forced an algebraic worker/wrapper on newtype instances (not
  on vanilla newtypes).  I am not sure where this came from (from code I
  wrote or from the recent restructuring of MkIds), but its not the right
  thing to do.  In particular, it requires newtype instances to have con_info
  labels in the generated code, which makes no sense.
- Worker construction for newtypes is smart enough that it will construct the
  right signature for newtype instances (ie, one that mentions the family
  type constructor, not the instance tycon).

12 years agoFix deriving of indexed data types
Manuel M T Chakravarty [Fri, 8 Jun 2007 04:44:00 +0000 (04:44 +0000)]
Fix deriving of indexed data types
- Fix typo introduced when moving deriving-specific code from TcEnv to TcDeriv
- Thanks to Roman for the bug report

12 years agoAdd instructions for adding a library to a build tree
Ian Lynagh [Thu, 7 Jun 2007 13:55:46 +0000 (13:55 +0000)]
Add instructions for adding a library to a build tree

12 years agoDon't suggest -fno-monomorphism-restriction if it's already set
simonpj@microsoft.com [Wed, 6 Jun 2007 13:34:37 +0000 (13:34 +0000)]
Don't suggest -fno-monomorphism-restriction if it's already set

This patch implements the suggestion in Trac #1398.  It's obviously
stupid to suggest -fno-monomorphism-restriction if the user is already
using it.

(Maybe another suggestion would be good, but this one clearly bogus.)

12 years agoRemove unnecessary free-variables from renamer
simonpj@microsoft.com [Wed, 6 Jun 2007 13:25:21 +0000 (13:25 +0000)]
Remove unnecessary free-variables from renamer

The renamer used to be responsible for making sure that all interfaces
with instance decls (other than orphans) were loaded.  But TH makes that
impossible, so the typechecker does it, via checkWiredInTyCon.

This patch simply removes redundant additions to the free-variable set
in the renamer, which were there, I believe, solely to ensure that the
instances came in.  Removing them should change nothing, but it's a
useful clean up.

12 years agoFIX #1385: make sure tuple instances are loaded
simonpj@microsoft.com [Wed, 6 Jun 2007 13:00:56 +0000 (13:00 +0000)]
FIX #1385: make sure tuple instances are loaded

Typechecking of explicit tuples is done "by hand" (rather than using
boxySplitTyConApp) so that rigidity is maintained.  In making that change
I'd forgotten to retain the call to checkWiredInTyCon, which is important
to make sure instances are brought into scope.

Test is tc227.

12 years agoTypo in comments
simonpj@microsoft.com [Tue, 5 Jun 2007 16:14:54 +0000 (16:14 +0000)]
Typo in comments

12 years agoremove #if branches for pre-ghc-6.0
Isaac Dupree [Tue, 5 Jun 2007 23:53:01 +0000 (23:53 +0000)]
remove #if branches for pre-ghc-6.0
I skipped utils/hsc2hs/Main.hs since its ifs also involved
checking for old versions of nhc98 (I don't want to figure that out),
but removed everything else I found relating to building with pre-6.0

12 years agoTypo, spotted by Stefan Holdermans
Ian Lynagh [Tue, 5 Jun 2007 19:46:43 +0000 (19:46 +0000)]
Typo, spotted by Stefan Holdermans

12 years agoifBuildable now prints a warning if the package is not buildable
Ian Lynagh [Tue, 5 Jun 2007 17:47:25 +0000 (17:47 +0000)]
ifBuildable now prints a warning if the package is not buildable

12 years agoFix normalisation of path to find
Ian Lynagh [Tue, 5 Jun 2007 14:50:43 +0000 (14:50 +0000)]
Fix normalisation of path to find
The old code didn't work on Mac OS X, as "which" returns successfully
when it can't find the program.

12 years agofix panic in #1379
Simon Marlow [Tue, 5 Jun 2007 08:44:38 +0000 (08:44 +0000)]
fix panic in #1379

12 years agoAdd missing newline from ghci :help output
bjpop@csse.unimelb.edu.au [Tue, 5 Jun 2007 02:09:30 +0000 (02:09 +0000)]
Add missing newline from ghci :help output

13 years agoimplement FastMutInt in non-GHC using IORefs (#1405)
Isaac Dupree [Fri, 1 Jun 2007 20:49:48 +0000 (20:49 +0000)]
implement FastMutInt in non-GHC using IORefs (#1405)
ghc still works, also the module was tested in hugs and ghc

13 years agoFIX #1110: the linker also needs the workaround
Simon Marlow [Fri, 1 Jun 2007 15:19:32 +0000 (15:19 +0000)]
FIX #1110: the linker also needs the workaround

13 years agoFIX BUILD: GHC doesn't use filepath (yet)
Simon Marlow [Mon, 21 May 2007 14:17:45 +0000 (14:17 +0000)]
FIX BUILD: GHC doesn't use filepath (yet)

13 years agotiny cleanup
Simon Marlow [Fri, 25 May 2007 08:22:35 +0000 (08:22 +0000)]
tiny cleanup

13 years agoremove OpenBSD-specific initAdjustor() code that shouldn't be required now
Simon Marlow [Fri, 1 Jun 2007 08:26:48 +0000 (08:26 +0000)]
remove OpenBSD-specific initAdjustor() code that shouldn't be required now
Submitted by: Matthias Kilian <kili@outback.escape.de>

13 years agofix locations for uploading src dists
Simon Marlow [Thu, 31 May 2007 13:41:13 +0000 (13:41 +0000)]
fix locations for uploading src dists

13 years agoFIX unregisterised build
Simon Marlow [Thu, 31 May 2007 13:28:42 +0000 (13:28 +0000)]
FIX unregisterised build
Can't check $(GhcUnregisterised) eagerly, because it might not have
been set yet (it's set in build.mk).

13 years agoFIX: loading package ghc in GHCi (added a couple of missing symbols)
Simon Marlow [Thu, 31 May 2007 11:05:06 +0000 (11:05 +0000)]
FIX: loading package ghc in GHCi (added a couple of missing symbols)

13 years agoFix bogus check for strictness in newtypes
simonpj@microsoft.com [Wed, 30 May 2007 14:14:44 +0000 (14:14 +0000)]
Fix bogus check for strictness in newtypes

13 years agoexport noSrcLoc, noSrcSpan
Simon Marlow [Wed, 30 May 2007 13:31:46 +0000 (13:31 +0000)]
export noSrcLoc, noSrcSpan

13 years agoFix copy-and-paste-o
Ian Lynagh [Wed, 30 May 2007 10:56:29 +0000 (10:56 +0000)]
Fix copy-and-paste-o

13 years agoFix bug in tcSimplifyInfer (Trac #1382)
simonpj@microsoft.com [Wed, 30 May 2007 08:12:40 +0000 (08:12 +0000)]
Fix bug in tcSimplifyInfer (Trac #1382)

When I rejigged constraint simplification when inferring types, I missed
a corner case.  Somethign that it's distressingly easy to do.  Anyway
this fixes it; see the comments in tcSimplifyInfer with the second call
to partition and extendLIEs.

The test is tcfail181.

13 years agoReject newtypes with strictness annotations; fixes read008
simonpj@microsoft.com [Wed, 30 May 2007 07:16:25 +0000 (07:16 +0000)]
Reject newtypes with strictness annotations; fixes read008

This used to be a parse error, but ! annotations are now handled
further downstream in the compiler, and I'd forgotten to check
that newtypes do not have strictness annotations.

The test read008 is technically in the wrong place (it's a typechecker
test now) but that doesn't matter

13 years agorefactor: combine repeated code in file reloading
iavor.diatchki@gmail.com [Fri, 25 May 2007 16:43:08 +0000 (16:43 +0000)]
refactor: combine repeated code in file reloading

13 years agoChanges the behavior of the "edit" command in GHCi.
iavor.diatchki@gmail.com [Fri, 25 May 2007 16:31:04 +0000 (16:31 +0000)]
Changes the behavior of the "edit" command in GHCi.
Currently, when the user invokes the GHCi editor without a parameter
GHCi chooses the last file that loaded _sucessfully_.
This patch changes this behavior to start the editor with the
last file that _faild_ (this being what I usually want to edit).
Caveat: we use the module graph to determine what happened
and so we do not catch errors that occured during dependecy
analysis (e.g., a mis-typed module name) but we could fix this later.

13 years agoUpdate Windows installation docs
Ian Lynagh [Tue, 29 May 2007 15:28:48 +0000 (15:28 +0000)]
Update Windows installation docs

13 years ago#1318: lex negative unboxed literals
Isaac Dupree [Sat, 26 May 2007 23:00:45 +0000 (23:00 +0000)]
#1318: lex negative unboxed literals
I reorganized the lexing of numeric literals a bit so the code didn't
get too ugly, after trying a few ways, and also considering possible plans
to be able to conditionally lex negative _boxed_ literals.

13 years ago#1318: remove negative-prim-literal old hackish implementation
Isaac Dupree [Sat, 26 May 2007 21:50:42 +0000 (21:50 +0000)]
#1318: remove negative-prim-literal old hackish implementation

13 years agoparseInteger->parseUnsignedInteger to clarify meaning
Isaac Dupree [Sat, 26 May 2007 21:22:04 +0000 (21:22 +0000)]
parseInteger->parseUnsignedInteger to clarify meaning
I decided against adding parseSignedInteger since octal
and hex literals often have junk between the '-' and the
digits, but, compare to Util.readRational which does handle
signed numbers.  Also since Integers - mathematically and
in Haskell - can be negative, normally.

13 years agoBuild Windows installer when making a bindist if ISCC is set
Ian Lynagh [Tue, 29 May 2007 10:21:43 +0000 (10:21 +0000)]
Build Windows installer when making a bindist if ISCC is set
It doesn't work yet, but I'm pretty sure that's because the bindist is
broken rather than the installer is broken.

13 years agodon't build the threaded RTS when GhcUnregisterised=YES
Simon Marlow [Tue, 29 May 2007 07:42:24 +0000 (07:42 +0000)]
don't build the threaded RTS when GhcUnregisterised=YES

13 years agoonly comments, spacing, alpha-renaming
Isaac Dupree [Sat, 26 May 2007 18:08:00 +0000 (18:08 +0000)]
only comments, spacing, alpha-renaming

13 years agoRemoved defunct compiler/codeGen/CgUsages.hi-boot-6
Michael D. Adams [Fri, 25 May 2007 20:51:26 +0000 (20:51 +0000)]
Removed defunct compiler/codeGen/CgUsages.hi-boot-6

13 years ago-package pretty is required for GHC >= 6.7
Simon Marlow [Fri, 25 May 2007 14:42:16 +0000 (14:42 +0000)]
-package pretty is required for GHC >= 6.7

13 years agoadd $(ghc_ge_607)
Simon Marlow [Fri, 25 May 2007 14:42:02 +0000 (14:42 +0000)]
add $(ghc_ge_607)

13 years agoSystem.Directory.Internals is now in package directory
Simon Marlow [Fri, 25 May 2007 08:09:44 +0000 (08:09 +0000)]
System.Directory.Internals is now in package directory

13 years agoSay where we're booting to aid debugging
Ian Lynagh [Thu, 24 May 2007 17:50:31 +0000 (17:50 +0000)]
Say where we're booting to aid debugging

13 years agoadd a rule for creating makefiles as <dir>/CabalMakefile
Simon Marlow [Thu, 24 May 2007 13:54:56 +0000 (13:54 +0000)]
add a rule for creating makefiles as <dir>/CabalMakefile
Not done by default yet, but useful when hacking on libraries.

13 years agoprocess is now split off from base
Ian Lynagh [Wed, 23 May 2007 19:08:43 +0000 (19:08 +0000)]
process is now split off from base

13 years agoold-locale is now split out
Ian Lynagh [Sat, 19 May 2007 13:26:56 +0000 (13:26 +0000)]
old-locale is now split out

13 years agoRefactor libraries/Makefile a bit; also, we don't need a bootstrapping pretty
Ian Lynagh [Sat, 19 May 2007 12:12:11 +0000 (12:12 +0000)]
Refactor libraries/Makefile a bit; also, we don't need a bootstrapping pretty

13 years agorebuild.library.<foo> is now a shorthand for clean then build
Ian Lynagh [Sat, 19 May 2007 12:11:34 +0000 (12:11 +0000)]
rebuild.library.<foo> is now a shorthand for clean then build

13 years agodirectory, old-time and random are now split off from base
Ian Lynagh [Sat, 19 May 2007 12:07:15 +0000 (12:07 +0000)]
directory, old-time and random are now split off from base

13 years agoAdd parallel extralib
Ian Lynagh [Fri, 18 May 2007 16:54:11 +0000 (16:54 +0000)]
Add parallel extralib

13 years agoWe now need a bootstrapping pretty package as Cabal depends on it
Ian Lynagh [Fri, 18 May 2007 16:25:04 +0000 (16:25 +0000)]
We now need a bootstrapping pretty package as Cabal depends on it

13 years agowibble
Pepe Iborra [Thu, 24 May 2007 11:46:21 +0000 (11:46 +0000)]
wibble

13 years agoImprove the interaction of 'seq' and associated data types
simonpj@microsoft.com [Wed, 23 May 2007 11:48:18 +0000 (11:48 +0000)]
Improve the interaction of 'seq' and associated data types

Roman produced programs involving associated types that did not optimise well.
His programs were something like this:

  data family T a
  data instance T Int = MkT Bool Char

  bar :: T Int -> Int
  bar t = t `seq` loop 0
where
  loop = ...

You'd think that the `seq` should unbox 't' outside the loop, since
a (T Int) is just a MkT pair.

The most robust way to make this happen is for the simplifier to understand
a bit about type-family instances.   See
Note [Improving seq]
in Simplify.lhs.  We use FamInstEnv.topNormaliseType to do the interesting
work.

To make this happen I did a bit of refactoring to the simplifier
monad.

I'd previously done a very similar transformation in LiberateCase, but it
was happening too late.  So this patch takes it out of LiberateCase as
well as adding it to Simplify.